I am trying to implement semantic checks for Select Rank (R1148) Construct.
I tried successfully C1150 constraint implementation.
For C1151 I am facing an issue as below,
$ f18 negative_rank.F90 -fdebug-semantics
fatal internal error: CHECK(x) failed at
Aborted (core dumped)
Debugging with GDB shows core dump in
GetIntValue(*i) Function, where the value of variable i, I suppose is
not an expression, which causes it to fail in
CHECK(x): in lib/semantics/tools.h
Is there somthing fundamental I am missing in below function?
void ConstructVisitor::Post(const parser::SelectRankConstruct &)
Is void ConstructVisitor::Post(const parser::SelectRankCaseStmt::Rank
&) a more appropriate function to do C1151 checks?
Below is the attached patch and program.