nwilson added inline comments.

================
Comment at: include/clang/AST/DeclTemplate.h:836
@@ -835,2 +835,3 @@
 
+  bool IsConcept : 1;
 protected:
----------------
rsmith wrote:
> This might make more sense on `TemplateDecl`, since we also want this flag 
> for `VarTemplateDecl`s. In any case, please use some existing spare bit for 
> this rather than making all `FunctionTemplateDecl`s 8 bytes larger by putting 
> it here.
@rsmith - Yeah, I originally thought to put it in TemplateDecl but reconsidered 
since ClassTemplateDecls would get it as well . However, I guess by making 
TemplateDecl::TemplatedDecl an IntPointerPair that concern is irrelevant.

@faisalv - Thanks for the info and suggestion! This helped with Richard's 
suggestion (below). FYI - It looks like that IntPointerPair, 
InstantiatedFromMember, is for explicit specializations, and the pointer to 
CommonBase (Common) is null for a function concept's primary template 
declaration. 


================
Comment at: include/clang/AST/DeclTemplate.h:986
@@ +985,3 @@
+  bool isConcept() const { return IsConcept; }
+  void setConcept(bool IC) { IsConcept = IC; }
+
----------------
rsmith wrote:
> Do we need a setter for this? (Can it change after the decl is constructed?)
The setter is used below when we see that `concept` is specified on the 
declaration. So, it wouldn't be initialized (or set)  to true when the decl is 
constructed.  Or, do you have a different opinion on where to set `IsConcept` 
to true such as how `IsConstExpr` is initialized in FunctionDecls being passed 
as a param in the constructor? 

================
Comment at: lib/Sema/SemaDecl.cpp:7727
@@ +7726,3 @@
+        Diag(D.getDeclSpec().getConceptSpecLoc(),
+             diag::err_concept_specified_specialization) << 1;
+      }
----------------
Thanks for the suggestion. I'll go with TemplatedDecl and see what you guys 
think.


http://reviews.llvm.org/D13357



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to