[PATCH] D92672: [flang][openacc] Enforce restriction on routine directive and clauses

Valentin Clement via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Dec 16 11:13:10 PST 2020


clementval added inline comments.


================
Comment at: flang/test/Semantics/acc-routine-validity.f90:19
+
+  !ERROR: Internal: no symbol found for 'dummy'
+  !$acc routine(dummy) seq
----------------
tskeith wrote:
> clementval wrote:
> > sameeranjoshi wrote:
> > > clementval wrote:
> > > > sameeranjoshi wrote:
> > > > > Why isn't it getting resolved though having a resolving function defined above?
> > > > > Do you think there is a need for a more better resolver, which I tried in 
> > > > > https://reviews.llvm.org/D93051 with the latest diff?
> > > > `dummy` is not defined anywhere and must raise an error here. There is no subroutine/function named dummy so no symbol so the error is triggered. This is the correct behavior. Not all name can be resolved if they really do not exists. 
> > > So why is it an internal error, which seems to be a fatal error?
> > > Shouldn't it be something like `no declaration found` or the normal way we get errors from Fortran part in F18?
> > Well this is the Flang error for no symbol found why would you want a different error? I don't get your point here. 
> That message is an internal error, not a user error. An internal error means a bug in the compiler, not in the user's program.
> 
> This particular internal error means that we have not resolved `dummy` to a symbol but we also have not reported any errors to the user indicating what is wrong.
Alright. I'm gonna issue a proper user error for this case. Thanks for the precision @tskeith 


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D92672



More information about the llvm-commits mailing list