[PATCH] D79851: [Flang] Semantics for SELECT TYPE

Peter Klausler via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri May 29 09:46:01 PDT 2020


klausler requested changes to this revision.
klausler added inline comments.
This revision now requires changes to proceed.


================
Comment at: flang/lib/Semantics/check-select-type.cpp:139
+  }
+  struct TypeCase {
+    explicit TypeCase(const parser::Statement<parser::TypeGuardStmt> &s,
----------------
sameeranjoshi wrote:
> klausler wrote:
> > Is `struct TypeCase` nested in `class TypeCaseValues`?
> Yes, the similar way select-case has `struct Case` inside `class CaseValues`.
But why is this necessary?


================
Comment at: flang/lib/Semantics/check-select-type.cpp:134
+    }
+    // TODO: C1162
+    return true;
----------------
C1162 is important; please implement it.  There can't be TYPE IS or CLASS IS cases in a SELECT TYPE that are not possible for the selector.


================
Comment at: flang/test/Semantics/selecttype03.f90:48
+!C)Associate with  with vector subscript
+            select type(b =>  foo(1) )
+                    type is (t1)
----------------
The comment states that the test is trying to force an error by associating a selector with a designator that has a vector subscript, but that's not what's happening in the code.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D79851/new/

https://reviews.llvm.org/D79851





More information about the llvm-commits mailing list