Quuxplusone added inline comments.

================
Comment at: clang/include/clang/AST/DeclCXX.h:2620
+
+  bool hasExplicitSpecifer() const {
+    return ExplicitSpecifier.getInt() != ESF_resolved_false ||
----------------
s/Specifer/Specifier/ (and please `git grep` for other instances of the same 
typo)


================
Comment at: clang/include/clang/Basic/DiagnosticParseKinds.td:40
+def note_explicit_bool_breaking_change_cxx2a : Note<
+  "this expression is parsed as explicit(bool) since c++2a">;
+
----------------
"C++2a" should be uppercased.


================
Comment at: clang/include/clang/Basic/DiagnosticSemaKinds.td:2125
+def err_deduction_guide_explicit_bool : Error<
+  "explicit specfier of a deduction guide cannot depend on a constant 
expression">;
 def err_deduction_guide_specialized : Error<"deduction guide cannot be "
----------------
s/specfier/specifier/ (and please git grep for other instances)


================
Comment at: clang/lib/Sema/DeclSpec.cpp:959
+  // Each decl-specifier shall appear at most once in a complete
+  // decl-specifier-seq, except that long may appear twice.
+  if (hasExplicitSpecifier()) {
----------------
Spelling/grammar/capitalization-of-C++2a.
Also, it seems to me that you've got a CWG wording issue here: what does N4810 
mean by "Each //decl-specifier// shall appear at most once in a complete 
//decl-specifier-seq//, except that `long` may appear twice"? What is "each" 
decl-specifier? Is `explicit(true)` a different decl-specifier from 
`explicit(1+1==2)`? Is `explicit(true)` different from `explicit(false)`?


================
Comment at: clang/test/SemaCXX/explicit.cpp:189
+
+#if __cplusplus < 201707L
   void testNew()
----------------
Why?


Repository:
  rC Clang

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

https://reviews.llvm.org/D60934



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

Reply via email to