v2024.11
This release brings SPIRV specialization constants, where
clause, type equality constraints,
and tightened up Slang's language support for interface extensions, along with serveral
SPIRV and language server fixes.
The compilation API and slangc now supports identifying entrypoints defined in namespaces or structs.
Breaking Changes
Extensions on interface types are no longer allowed:
interface IFoo { ... }
extension IFoo
{}
The original extension IFoo
syntax is replaced by more proper generic syntax:
extension<T:IFoo> T
{}
All Changes
f929b42 Fix doc build errors. (#5018)
5f1ba7b Various documentation improvements. (#5017)
3136771 Initial -embed-spirv support (#4974)
33e8bfd Fix SPIRV SV_TessFactor type adaptation logic. (#5010)
879ee3d Support entrypoints defined in a namespace. (#5011)
a3b25ce Add language proposal for where clauses (#5015)
e5ead40 Fix invalid documentsymbol error in langauge server. (#5012)
77ecad2 Fix spirv emit for global pointer variable. (#5009)
d655302 Support where
clause and type equality constraint. (#4986)
a88055c Respect matrix layout in uniform and in/out parameters for HLSL target. (#5013)
959f55d Remove unused package in primary benchmark script (#5014)
d4aeb18 Document All Capability Atoms and Profiles (#5008)
65dd3b7 Add Documentation For Auto-Generated Constructors & Initializer Lists (#4988)
a7e9119 Preserve name in DeclRefExpr for correct highlighitng of This
. (#4980)
dc3f2d6 Fix resource specialization with -embed-dxil
(#4990)
599dae5 Open existential on arguments after overload resolution. (#4982)
ddd2905 Fix extension override behavior, and disallow extension on interface types. (#4977)
56a3c02 Push benchmark results to a viewable page (#4996)
1673cf9 Add Path::removeNonEmpty() to remove non-empty dir (#4984)