[clang] [HLSL] Support vector swizzles on scalars (PR #67700)
via cfe-commits
cfe-commits at lists.llvm.org
Wed Oct 25 07:08:49 PDT 2023
================
@@ -930,7 +930,11 @@ NumericLiteralParser::NumericLiteralParser(StringRef TokSpelling,
// and FP constants (specifically, the 'pp-number' regex), and assumes that
// the byte at "*end" is both valid and not part of the regex. Because of
// this, it doesn't have to check for 'overscan' in various places.
- if (isPreprocessingNumberBody(*ThisTokEnd)) {
+ // Note: For HLSL, the end token is allowed to be '.' which would be in the
+ // 'pp-number' regex. This is required to support vector swizzles on numeric
+ // constants (i.e. 1.xx or 1.5f.rrr).
+ if (isPreprocessingNumberBody(*ThisTokEnd) &&
+ !(LangOpts.HLSL && *ThisTokEnd == '.')) {
----------------
cor3ntin wrote:
I am happy to leave that as is then - even if i am a bit surprised by that commit.
https://github.com/llvm/llvm-project/pull/67700
More information about the cfe-commits
mailing list