[PATCH] D71830: [OpenMP][Part 2] Use reusable OpenMP context/traits handling
Kiran Chandramohan via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Tue Feb 11 15:26:33 PST 2020
kiranchandramohan added a comment.
Looks OK to me.
Couple of comments inline.
================
Comment at: clang/include/clang/Serialization/ASTRecordReader.h:272
+
+ template <> OpenMPTraitInfo *readUserType() { return readOpenMPTraitInfo(); }
+
----------------
jdoerfert wrote:
> jdoerfert wrote:
> > kiranchandramohan wrote:
> > > jdoerfert wrote:
> > > > kiranchandramohan wrote:
> > > > > jdoerfert wrote:
> > > > > > kiranchandramohan wrote:
> > > > > > > Compiler throws up this error.
> > > > > > > error: explicit specialization in non-namespace scope ‘class clang::ASTRecordReader’
> > > > > > Oh, my compiler was happy. Let me rebase and see what the pre-merge bots say so I might get some insight into the problem.
> > > > > Were you able to reproduce the error? I was using gcc 9.2 compiler.
> > > > I have not seen the error yet. I build with clang. Do you happen to have an idea how to refactor this? I will look into it with a new gcc asap.
> > > Moving the specialization to the source file seems to fix the issue.
> > I will do that then. Did you find the time to look over the rest?
> > Moving the specialization to the source file seems to fix the issue.
>
> Like this?
You can remove the following declaration from the header file and just define it in the cpp file.
/// Specialization for OMPTraitInfo*.
template <> OMPTraitInfo *readUserType();
================
Comment at: llvm/lib/Frontend/OpenMP/OMPContext.cpp:417
+#include "llvm/Frontend/OpenMP/OMPKinds.def"
+ S.pop_back();
+ return S;
----------------
If there is no match? Or is it always guaranteed to have a match?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D71830/new/
https://reviews.llvm.org/D71830
More information about the cfe-commits
mailing list