Monthly Report for 2026-08
Note: The progress bar is an extremely wild guess, which will get more accurate over time as we gain confidence estimating and tracking our pace.
New proposals during the month
- 0013 - Named Casts (Refinement) — Chris Bieneman
- 0019 - Size type (Under Consideration) — Chris Bieneman
Status changes
- 0004 - 202x Feature Removals: Refinement → Accepted
- 0014 -
groupsharedArguments: Under Consideration → Refinement - 0015 - const-qualified Non-static Member Functions: Under Consideration → Refinement
- 0016 - Non-member Operator Overloading: Under Consideration → Refinement
- 0018 - User-defined Conversion Functions: Under Consideration → Refinement
Normative Updates
Proposal Status
0001 - HLSL 202x and 202y
State: Refinement
| DXC | Clang | |
|---|---|---|
| 202x | In Progress | In Progress |
| 202y | Not Planned | In Progress |
0002 - Conforming Literals
State: Completed
| DXC | Clang | |
|---|---|---|
| C/C++ Literal Lexing | Complete | Complete |
| fixed size suffixes (C++23) | Complete | Complete |
0003 - Simplified Overload Resolution
State: Refinement
| DXC | Clang | |
|---|---|---|
| C++-aligned best match | Not Planned | Complete |
| C++-aligned candidate selection | Not Planned | Complete |
0004 - 202x Feature Removals
State: Accepted
| DXC | Clang | |
|---|---|---|
| Effects Syntax | microsoft/DirectXShaderCompiler#8480 | Completed |
Remove interface keyword | microsoft/DirectXShaderCompiler#8481 | Completed |
Remove uniform keyword | microsoft/DirectXShaderCompiler#8482 | Completed |
| Error on cbuffer initializer | microsoft/DirectXShaderCompiler#8483 | llvm/llvm-project#200021 |
0005 - Refined cbuffer Contexts
State: Refinement
| DXC | Clang | |
|---|---|---|
Disallow namespace in cbuffer | microsoft/DirectXShaderCompiler#8484 | Completed |
0006 - Restricted Unbounded Arrays
State: Refinement
| DXC | Clang | |
|---|---|---|
| Restricting unbound array declarations | Not Started | Not Started |
0007 - Formalized Memory and Execution Model
State: Under Consideration
No implementation status available
0008 - Numeric Constants
State: Refinement
| DXC | Clang | |
|---|---|---|
| hlsl::numeric_limits | Not Started | Not Started |
0009 - HLSL Namespace
State: Refinement
| DXC | Clang | |
|---|---|---|
hlsl namespace | In Progress (prototype implementation) | In Progress |
0010 - Modern C++ Features
State: Under Consideration
| DXC | Clang | |
|---|---|---|
C++11 template closing >> | Complete | Complete |
| variadic templates | Not Started | Complete |
| variable templates | Not Started | Not Started |
auto keyword | Complete | Complete |
| decltype | Not Started | Complete |
| Return type deduction for normal functions | Not Started | Not Started |
| constexpr | Prototype | Complete |
| static_assert | Prototype | Complete |
0011 - Strict Initializer Lists
State: Under Consideration
| DXC | Clang | |
|---|---|---|
| C/C++ Initializers | Not Planned | Not Started |
0012 - HLSL Loop Unroll Factor
State: Refinement
| DXC | Clang | |
|---|---|---|
| [unroll] doesn’t truncate | Not Started | Complete |
0013 - Named Casts
State: Refinement
No implementation status available
0014 - groupshared Arguments
State: Refinement
| DXC | Clang | |
|---|---|---|
groupshared arguments | Complete | Complete |
0015 - const-qualified Non-static Member Functions
State: Refinement
| DXC | Clang | |
|---|---|---|
const member functions | Prototype implementation | Complete |
0016 - Non-member Operator Overloading
State: Refinement
| DXC | Clang | |
|---|---|---|
const member functions | Prototype implementation | Complete |
0017 - HLSL Ternary Operator Behavior
State: Under Consideration
No implementation status available
0018 - User-defined Conversion Functions
State: Refinement
| DXC | Clang | |
|---|---|---|
| user-defined conversions | Prototype implementation | Complete |
0019 - Size type
State: Under Consideration
No implementation status available