[PATCH] D128440: [WebAssembly] Initial support for reference type funcref in clang

Erich Keane via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 17 06:48:14 PST 2023


erichkeane added inline comments.


================
Comment at: clang/include/clang/Basic/Attr.td:4129
+  let Documentation = [WebAssemblyExportNameDocs];
+  let Subjects = SubjectList<[TypedefName], ErrorDiag>;
+}
----------------
pmatos wrote:
> erichkeane wrote:
> > pmatos wrote:
> > > erichkeane wrote:
> > > > Note that it seems this is likely not going to work correctly on template type aliases!  You probably want to make sure that is acceptable to you.
> > > Documentation says about Subject:
> > > 
> > > ```
> > >   // The things to which an attribute can appertain
> > >   SubjectList Subjects;
> > > ```
> > > 
> > > Given this can be attached to function pointer types, is the subject then just Type ?
> > IIRC, the list of subjects are the Decls and Stmt types that are possibly allowed.  I don't thnk it would be just 'Type' there.
> > 
> > As you have it, it is only allowed on TypedefNameDecl.
> > 
> > See the SubsetSubject's at the top of this file for some examples on how you could constrain a special matcher to only work on function pointer decls.
> Good point @erichkeane . What do you think of FunctionPointer implementation here?
That seems acceptable to me.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D128440



More information about the llvm-commits mailing list