commit | 797ccecd7de3a073c3779d7dd5b291c8400f39a0 | [log] [tgz] |
---|---|---|
author | Finn Plummer <canadienfinn@gmail.com> | Wed Apr 30 09:41:08 2025 -0700 |
committer | Copybara-Service <copybara-worker@google.com> | Wed Apr 30 09:44:33 2025 -0700 |
tree | af29ee637582693f50aaa4e1e05a5385f26c8450 | |
parent | 62ff6192cfc6cbda7f3387cea998a71cc89366b3 [diff] |
[HLSL][RootSignature] Add lexing support for floating points (#137720) - this takes care to add support to match the [behaviour of DXC](https://github.com/microsoft/DirectXShaderCompiler/blob/34b6d0f91e6afd523bdc574836093f021713cce7/tools/clang/lib/Parse/HLSLRootSignature.cpp#L74) acceptable floating point integers Namely: - Allow for specifying the decimal '.' - Allow for specifying exponents with 'e' or 'E' and allow for 'f' to denote an otherwise interpreted integer as a float This pr is simply responsible of creating a token that could be interpeted as a floating point integer by `NumericLiteralParser`. As such, we are not required to validate that the special characters only occur once and that 'f' is only at the end of the string. These will be validated when invoking `NumericLiteralParser` during parsing. Resolves #126565 GitOrigin-RevId: 8e4dd21e6362ca161b7fda4fe7c5fa20f72ffab2
Welcome to Clang.
This is a compiler front-end for the C family of languages (C, C++ and Objective-C) which is built as part of the LLVM compiler infrastructure project.
Unlike many other compiler frontends, Clang is useful for a number of things beyond just compiling code: we intend for Clang to be host to a number of different source-level tools. One example of this is the Clang Static Analyzer.
If you're interested in more (including how to build Clang) it is best to read the relevant websites. Here are some pointers:
Information on Clang: http://clang.llvm.org/
Building and using Clang: http://clang.llvm.org/get_started.html
Clang Static Analyzer: http://clang-analyzer.llvm.org/
Information on the LLVM project: http://llvm.org/
If you have questions or comments about Clang, a great place to discuss them is on the Clang forums:
If you find a bug in Clang, please file it in the LLVM bug tracker: