[clang] [BitInt] Expose a _BitInt literal suffix in C++ (PR #86586)

Erich Keane via cfe-commits cfe-commits at lists.llvm.org
Fri Jun 7 16:26:45 PDT 2024


================
@@ -1117,6 +1118,31 @@ NumericLiteralParser::NumericLiteralParser(StringRef TokSpelling,
       if (isImaginary) break;   // Cannot be repeated.
       isImaginary = true;
       continue;  // Success.
+    case '_':
+      if (isFPConstant)
+        break; // Invalid for floats
+      if (HasSize)
+        break;
+      if (DoubleUnderscore)
+        break; // Cannot be repeated.
----------------
erichkeane wrote:

Hmm.. I'd definitely prefer not to have this be forgotten if we add a second double underscore literal suffix, but presumably there is something we could do to make it not active code.  Perhaps we could replace it with a `assert(!DoubleUnderscore && "Doubleunderscore should be handled like above if we ever get a suffix that could hit this")`

WDYT?  I don't have the ability to do so, but just a suggestion and a 'patches welcome' to whoever wants to do the work (@js234 @mikerice1969 @Sirraide ).

https://github.com/llvm/llvm-project/pull/86586


More information about the cfe-commits mailing list