<feed xmlns='http://www.w3.org/2005/Atom'>
<title>slang.git/include/slang-deprecated.h, branch master</title>
<subtitle>Making it easier to work with shaders</subtitle>
<id>https://git.yummers.dev/slang.git/atom?h=master</id>
<link rel='self' href='https://git.yummers.dev/slang.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/'/>
<updated>2025-09-10T22:55:00+00:00</updated>
<entry>
<title>Add FindModifier for Declarations (#8308)</title>
<updated>2025-09-10T22:55:00+00:00</updated>
<author>
<name>Xuanda Yang</name>
<email>th3charlie@gmail.com</email>
</author>
<published>2025-09-10T22:55:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=f3e26754c4b63fee419407752b771ecf0bb8ed5a'/>
<id>urn:sha1:f3e26754c4b63fee419407752b771ecf0bb8ed5a</id>
<content type='text'>
Add `findModifier` for `DeclReflection` so pattern like `extern struct
foo;` can be properly reflected.

Closes #8009</content>
</entry>
<entry>
<title>Introduce CDataLayout &amp; -fvk-use-c-layout (#8136)</title>
<updated>2025-08-21T05:47:18+00:00</updated>
<author>
<name>Julius Ikkala</name>
<email>julius.ikkala@gmail.com</email>
</author>
<published>2025-08-21T05:47:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=35f8e092f2aa3ed5e3cf03387e712f798ff4850e'/>
<id>urn:sha1:35f8e092f2aa3ed5e3cf03387e712f798ff4850e</id>
<content type='text'>
Closes #8112. ~~The issue asks for a "C layout", but in this PR I use
the term "CPU layout" because this naming was pre-existing in the
codebase as `kCPULayoutRulesImpl_`. The primary purpose of this layout
is to match CPU-side struct definitions with the shader side. I'm open
to better naming suggestions, though.~~

Edit: switched back to using `CDataLayout` &amp; `-fvk-use-c-layout`, as the
CPU target depends on the object layout rules of existing CPU layout
rules, but they're incompatible with actual shaders. So a new
`kCLayoutRulesImpl_` was needed anyway.

---------

Co-authored-by: Ellie Hermaszewska &lt;ellieh@nvidia.com&gt;</content>
</entry>
<entry>
<title>Add reflection api for overload candidate filtering. (#8066)</title>
<updated>2025-08-06T08:07:41+00:00</updated>
<author>
<name>Yong He</name>
<email>yonghe@outlook.com</email>
</author>
<published>2025-08-06T08:07:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=68b0125226464cb3c9e9b7f50bfb53cda97723b4'/>
<id>urn:sha1:68b0125226464cb3c9e9b7f50bfb53cda97723b4</id>
<content type='text'>
* Add reflection api for overload candidate filtering.

* Fix API.

* Fix.

* Update build.

* Update test.

* Update formatting.</content>
</entry>
<entry>
<title>Allow Link time constant array length sizing, warn on unsupported functionality (#7067)</title>
<updated>2025-07-01T15:36:02+00:00</updated>
<author>
<name>Ellie Hermaszewska</name>
<email>ellieh@nvidia.com</email>
</author>
<published>2025-07-01T15:36:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=c94ca1692e101df87215232e87fa7edadc1a7b05'/>
<id>urn:sha1:c94ca1692e101df87215232e87fa7edadc1a7b05</id>
<content type='text'>
* Add link time array layout test

* Add link time constant array size compilation test

* Link time constant array size test

* Allow getting link time array size

Closes https://github.com/shader-slang/slang/issues/6753

* format

* Switch to SIMPLE test and check output

* Implement without binary api changes

* diagnose on link time constant sized array

* fix test

---------

Co-authored-by: Yong He &lt;yonghe@outlook.com&gt;</content>
</entry>
<entry>
<title>Make image format reflection easier (#6550)</title>
<updated>2025-03-20T06:38:52+00:00</updated>
<author>
<name>Devon</name>
<email>devonrutledge03@gmail.com</email>
</author>
<published>2025-03-20T06:38:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=30068d75fb97fecc163253fb331daddbb09234e6'/>
<id>urn:sha1:30068d75fb97fecc163253fb331daddbb09234e6</id>
<content type='text'>
* image format json reflection

* format code

* use direct include

---------

Co-authored-by: slangbot &lt;186143334+slangbot@users.noreply.github.com&gt;</content>
</entry>
<entry>
<title>expose value of constant integers in module reflection (#6367)</title>
<updated>2025-02-26T21:43:57+00:00</updated>
<author>
<name>Alexandre Bléron</name>
<email>alex.bleron@gmail.com</email>
</author>
<published>2025-02-26T21:43:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=86669cbb781840f8de180b1f793275f4511d3b65'/>
<id>urn:sha1:86669cbb781840f8de180b1f793275f4511d3b65</id>
<content type='text'>
* Expose value of constant integers in module reflection

This commit adds `VariableReflection::getDefaultValueInt` to get the value of a variable if it is a compile-time constant integer.
TODO: currently it works only if the initializer expression is an integer literal, references to other constant values are not handled.

* Update VarDecl folded constant value during DeclBodyVisitor

Constant folding for integer values is already done internally by _validateCircularVarDefinition, this just reuses the result.

* Address review comments &amp; formatting

* Formatting

---------

Co-authored-by: Yong He &lt;yonghe@outlook.com&gt;</content>
</entry>
<entry>
<title>includes: Reduce typo count (#5710)</title>
<updated>2024-12-02T19:47:52+00:00</updated>
<author>
<name>Bruce Mitchener</name>
<email>bruce.mitchener@gmail.com</email>
</author>
<published>2024-12-02T19:47:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=c8f8f73a8e5506a45ddc86dafaad99a024d83361'/>
<id>urn:sha1:c8f8f73a8e5506a45ddc86dafaad99a024d83361</id>
<content type='text'>
Co-authored-by: Yong He &lt;yonghe@outlook.com&gt;</content>
</entry>
<entry>
<title>Reflection compiler option (#5507)</title>
<updated>2024-11-11T19:32:00+00:00</updated>
<author>
<name>tareksander</name>
<email>57038324+tareksander@users.noreply.github.com</email>
</author>
<published>2024-11-11T19:32:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=7e51180ed80ce1c5718b65c6625dc12fe64c8bfa'/>
<id>urn:sha1:7e51180ed80ce1c5718b65c6625dc12fe64c8bfa</id>
<content type='text'>
* Moved the pretty writer code from slang-reflection-test into core

* Moved reflection test code into the slang codebase and added the compiler option -reflection-json to store the reflection data in a separate file.

* Documented -reflection-json command line option

* moved PrettyWriter from core to compiler-core

* Fixed variable shadowing warning

* Use File::writeAllText instead of OSFilesystem and write to stdout if - is used as the path

* format code

* Fixed linker error

* Fix COM Ptr life time issues.

* Move enum to the end.

* Fix formatting.

---------

Co-authored-by: slangbot &lt;186143334+slangbot@users.noreply.github.com&gt;
Co-authored-by: Yong He &lt;yonghe@outlook.com&gt;</content>
</entry>
<entry>
<title>format</title>
<updated>2024-10-29T06:49:26+00:00</updated>
<author>
<name>Ellie Hermaszewska</name>
<email>ellieh@nvidia.com</email>
</author>
<published>2024-10-29T06:49:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=f65d756bff8d4c5cbc15bd0322a2ae8e6b896a21'/>
<id>urn:sha1:f65d756bff8d4c5cbc15bd0322a2ae8e6b896a21</id>
<content type='text'>
* format

* Minor test fixes

* enable checking cpp format in ci</content>
</entry>
<entry>
<title> Move C interface from slang.h to slang-deprecated.h (#5301)</title>
<updated>2024-10-15T16:38:39+00:00</updated>
<author>
<name>Ellie Hermaszewska</name>
<email>ellieh@nvidia.com</email>
</author>
<published>2024-10-15T16:38:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=66b103180e168c597f3c246c68a9886b69707493'/>
<id>urn:sha1:66b103180e168c597f3c246c68a9886b69707493</id>
<content type='text'>
* Squash redundant move warnings

* Move C interface from slang.h to slang-deprecated.h

spGetBuildTagString remains, because it's useful to have before the
global session exists.

This C API is used quite pervasively in the C++ helpers (for example
slang::UserAttribute. It's not trivial to move these to
slang-deprecated.h as they're entangled with some enums which are
themselves used elsewhere in the compiler.

The fact that these helpers use the C API can be viewed as an
implementation detail for now, and this usage moved to slang-deprecated
in due course.

Closes https://github.com/shader-slang/slang/issues/4758

* Squash warnings for our usage of our deprecated API

---------

Co-authored-by: Yong He &lt;yonghe@outlook.com&gt;</content>
</entry>
</feed>
