<feed xmlns='http://www.w3.org/2005/Atom'>
<title>slang.git/source/core, 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-10-08T18:20:16+00:00</updated>
<entry>
<title>Fix UnixPipeStream::read() not handling EOF (#8626)</title>
<updated>2025-10-08T18:20:16+00:00</updated>
<author>
<name>ncelikNV</name>
<email>ncelik@nvidia.com</email>
</author>
<published>2025-10-08T18:20:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=d30ae275e5ff53650526755ffa2a7a42992d88a8'/>
<id>urn:sha1:d30ae275e5ff53650526755ffa2a7a42992d88a8</id>
<content type='text'>
Fixes #6754.</content>
</entry>
<entry>
<title>canonical type equality constraint (#8445)</title>
<updated>2025-09-30T06:22:50+00:00</updated>
<author>
<name>Ronan</name>
<email>ro.cailleau@gmail.com</email>
</author>
<published>2025-09-30T06:22:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=ee5adb87050ae7c0b96056a67dddc5d48174e695'/>
<id>urn:sha1:ee5adb87050ae7c0b96056a67dddc5d48174e695</id>
<content type='text'>
Fixes #8439

When checked, generic type equality constraints types are now in a
canonical order, allowing for a commutative type equality operator.

---------

Co-authored-by: Mukund Keshava &lt;mkeshava@nvidia.com&gt;</content>
</entry>
<entry>
<title>Use LOAD_LIBRARY_SEARCH_DEFAULT_DIRS for LoadLibraryExW (#8491)</title>
<updated>2025-09-19T21:53:03+00:00</updated>
<author>
<name>Gangzheng Tong</name>
<email>tonggangzheng@gmail.com</email>
</author>
<published>2025-09-19T21:53:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=c8d189bd500fce3d6716a79cdb204a94b36a84b5'/>
<id>urn:sha1:c8d189bd500fce3d6716a79cdb204a94b36a84b5</id>
<content type='text'>
Before:
- Uses `LOAD_LIBRARY_SEARCH_USER_DIRS` in `LoadLibraryExW`, which might
cause exception if there is no pathes added by `AddDllDirectory()`
After:
- Use the composite flag `LOAD_LIBRARY_SEARCH_DEFAULT_DIRS`, which
searches for several locations.
- Will still search dir added by `AddDllDirectory()`, but avoids empty
path seraching if there is no AddDllDirectory() calls.

Related to https://github.com/shader-slang/slang/issues/8462

---------

Co-authored-by: slangbot &lt;ellieh+slangbot@nvidia.com&gt;
Co-authored-by: slangbot &lt;186143334+slangbot@users.noreply.github.com&gt;</content>
</entry>
<entry>
<title>include limits.h in slang-platform.cpp (#8473)</title>
<updated>2025-09-19T04:17:25+00:00</updated>
<author>
<name>John Zupin</name>
<email>johnzupin@gmail.com</email>
</author>
<published>2025-09-19T04:17:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=391d35d63e83293855180b1cce061ca6b73a8b56'/>
<id>urn:sha1:391d35d63e83293855180b1cce061ca6b73a8b56</id>
<content type='text'>
fixes https://github.com/shader-slang/slang/issues/8472

Fixes an issue with GCC 9.4.0 on Ubuntu 20.04, it will throw an error
about PATH_MAX not being declared.

Co-authored-by: Mukund Keshava &lt;mkeshava@nvidia.com&gt;</content>
</entry>
<entry>
<title>Use wide char version of Windows API (#8390)</title>
<updated>2025-09-08T17:24:05+00:00</updated>
<author>
<name>Gangzheng Tong</name>
<email>tonggangzheng@gmail.com</email>
</author>
<published>2025-09-08T17:24:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=3aff764c2b5d613f766538d27e0b9f448e7ed5ca'/>
<id>urn:sha1:3aff764c2b5d613f766538d27e0b9f448e7ed5ca</id>
<content type='text'>
This PR modernizes the Windows-specific code by replacing ANSI Windows
API functions with their Unicode (wide character) counterparts. This
change ensures proper handling of Unicode file paths and strings on
Windows systems.

### File Operations (`source/core/slang-io.cpp`)
- `DeleteFileA` → `DeleteFileW`
- `GetTempPathA` → `GetTempPathW` 
- `GetTempFileNameA` → `GetTempFileNameW`
- `RemoveDirectoryA` → `RemoveDirectoryW`
- `SHFileOperationA` → `SHFileOperationW`
- `GetModuleFileNameA` → `GetModuleFileNameW` with UTF-8 conversion

### Platform Operations (`source/core/slang-platform.cpp`)
- `GetModuleHandleExA` → `GetModuleHandleExW`
- `LoadLibraryExA` → `LoadLibraryExW`
- `LoadLibraryA` → `LoadLibraryW`
- `OutputDebugStringA` → `OutputDebugStringW`

### Runtime and Tools
- `MessageBoxA` → `MessageBoxW` in slang-rt
- `GetCurrentDirectoryA` → `GetCurrentDirectoryW` in slang-fiddle
- String literal conversion to wide strings in vk-pipeline-create

---------

Co-authored-by: github-actions[bot] &lt;41898282+github-actions[bot]@users.noreply.github.com&gt;
Co-authored-by: Gangzheng Tong &lt;gtong-nv@users.noreply.github.com&gt;
Co-authored-by: slangbot &lt;ellieh+slangbot@nvidia.com&gt;
Co-authored-by: slangbot &lt;186143334+slangbot@users.noreply.github.com&gt;</content>
</entry>
<entry>
<title>Add check for backtrace availability (#8329)</title>
<updated>2025-09-06T02:38:08+00:00</updated>
<author>
<name>Dario Mylonopoulos</name>
<email>32958057+ramenguy99@users.noreply.github.com</email>
</author>
<published>2025-09-06T02:38:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=4856da26e188c28bf691d0210ce8016264c00940'/>
<id>urn:sha1:4856da26e188c28bf691d0210ce8016264c00940</id>
<content type='text'>
The header execinfo.h and the related backtrace functionality is not
available on all linux platforms. In particular it's missing on musl
linux and on Android before API version 33. This causes compilation
errors on those platforms.

With this change, we first check if backtrace functionality is available
by checking if we are using glibc or a compatible Android version.

Tested on manylinux_2_28 with glibc 2.28 and musllinux_1_2 with musl
1.2, has not been tested on Android.

Co-authored-by: Yong He &lt;yonghe@outlook.com&gt;</content>
</entry>
<entry>
<title>Try both LoadLibrary functions on Windows (#8368)</title>
<updated>2025-09-05T04:35:34+00:00</updated>
<author>
<name>jarcherNV</name>
<email>jarcher@nvidia.com</email>
</author>
<published>2025-09-05T04:35:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=5500f11768d4d93eef4dfcecf0821fee747bf1a4'/>
<id>urn:sha1:5500f11768d4d93eef4dfcecf0821fee747bf1a4</id>
<content type='text'>
If a given library cannot be found using LoadLibraryExA then try again
using LoadLibraryA. Return an error only if both of these failed.</content>
</entry>
<entry>
<title>Revert "Reduce the dependency to thread library (#8216)" (#8319)</title>
<updated>2025-08-28T22:36:36+00:00</updated>
<author>
<name>kaizhangNV</name>
<email>149626564+kaizhangNV@users.noreply.github.com</email>
</author>
<published>2025-08-28T22:36:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=74c39eaa3dbd6ca55a383afca51ec18962838f08'/>
<id>urn:sha1:74c39eaa3dbd6ca55a383afca51ec18962838f08</id>
<content type='text'>
This cause the pthread not found issue on old glibc build. 
This reverts commit 113327194d4cf750af6265a560615850a8e7e6fb.</content>
</entry>
<entry>
<title>Fix readlink missing include (#8260)</title>
<updated>2025-08-22T17:57:19+00:00</updated>
<author>
<name>TheGoldMonkey</name>
<email>41217164+TheGoldMonkey@users.noreply.github.com</email>
</author>
<published>2025-08-22T17:57:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=3ca2e47514e3fce133a6ac7d1aca88a3b679c551'/>
<id>urn:sha1:3ca2e47514e3fce133a6ac7d1aca88a3b679c551</id>
<content type='text'>
On Linux, `slang-platform.cpp` compiles with libstdc++ only because
`unistd.h` is being transitively included. It fails to compile with
standard libraries that don't include `unistd.h` like libc++.

This is the how it's being transitively included with libstdc++:
```
/home/mcvm/dev/slang/source/core/slang-platform.h
/home/mcvm/dev/slang/source/core/../core/slang-string.h
/home/mcvm/dev/slang/source/core/../core/slang-hash.h
/home/mcvm/dev/slang/external/unordered_dense/include/ankerl/unordered_dense.h
/usr/lib64/gcc/x86_64-unknown-linux-gnu/15.1.0/../../../../include/c++/15.1.0/memory
/usr/lib64/gcc/x86_64-unknown-linux-gnu/15.1.0/../../../../include/c++/15.1.0/bits/shared_ptr_atomic.h
/usr/lib64/gcc/x86_64-unknown-linux-gnu/15.1.0/../../../../include/c++/15.1.0/bits/atomic_base.h
/usr/lib64/gcc/x86_64-unknown-linux-gnu/15.1.0/../../../../include/c++/15.1.0/bits/atomic_wait.h
/usr/include/unistd.h
```

Tested building with `-stdlib=libc++` and `-stdlib=libstdc++`.</content>
</entry>
<entry>
<title>Reduce the dependency to thread library (#8216)</title>
<updated>2025-08-20T16:28:30+00:00</updated>
<author>
<name>Jay Kwak</name>
<email>82421531+jkwak-work@users.noreply.github.com</email>
</author>
<published>2025-08-20T16:28:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.yummers.dev/slang.git/commit/?id=113327194d4cf750af6265a560615850a8e7e6fb'/>
<id>urn:sha1:113327194d4cf750af6265a560615850a8e7e6fb</id>
<content type='text'>
Slang compiler doesn't use thread and we should declare the dependency
to the thread library when we don't need it.

The use of Thread is limited to the tools such as slang-test.</content>
</entry>
</feed>
