AntonBikineev marked 7 inline comments as done.
AntonBikineev added a comment.

Thanks Richard for taking a look!



================
Comment at: clang/include/clang/Basic/DiagnosticCommonKinds.td:190
   InGroup<CXX98CompatPedantic>, DefaultIgnore;
+def ext_cxx2b_size_t_suffix : Extension<
+  "'size_t' suffix for literals is a C++2b extension">,
----------------
rsmith wrote:
> Should this be an `ExtWarn`? I think we should warn on this by default.
I tried to follow the strategy used for 'long long' (only warn with 
-Wlong-long), but I agree that warn-by-default would probably be better.


================
Comment at: clang/lib/Lex/LiteralSupport.cpp:594-595
 
   // Loop over all of the characters of the suffix.  If we see something bad,
   // we break out of the loop.
   for (; s != ThisTokEnd; ++s) {
----------------
rsmith wrote:
> General comment: I think the checks here have become too complex and 
> error-prone. I suggest we add another flag, `hasSize`, that's set when we 
> parse any size modifier (`F`, `L`, `LL`, `H`, `F128`, `I64`, and now `Z`), 
> and when parsing any size modifier, replace the existing ad-hoc set of checks 
> with a check for `hasSize`.
Good idea! It actually helped to flush out the issue when Q and H are mixed 
together: https://godbolt.org/z/8hj39P93a


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D99456

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

Reply via email to