Skip to content

Fix the release CI broken#9868

Merged
csyonghe merged 2 commits intomasterfrom
fix_release_ci_broke
Feb 4, 2026
Merged

Fix the release CI broken#9868
csyonghe merged 2 commits intomasterfrom
fix_release_ci_broke

Conversation

@kaizhangNV
Copy link
Contributor

@kaizhangNV kaizhangNV commented Feb 3, 2026

Close #9864.

The bug was an uninitialized pointer field diffThisType in DerivativeRequirementDecl class (source/slang/slang-ast-decl.h line 1021). The field was declared without a default initializer:

This caused crashes in release builds because the uninitialized memory contained garbage that the serializer tried to dereference. Debug builds typically zero-initialize memory, masking the bug.

The bug was an uninitialized pointer field diffThisType in DerivativeRequirementDecl class
(source/slang/slang-ast-decl.h line 1021). The field was declared without a default initializer:

This caused crashes in release builds because the uninitialized memory contained garbage
that the serializer tried to dereference. Debug builds typically zero-initialize memory,
masking the bug.
@kaizhangNV kaizhangNV requested a review from a team as a code owner February 3, 2026 23:49
Copilot AI review requested due to automatic review settings February 3, 2026 23:49
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR fixes a critical crash in release builds caused by an uninitialized pointer field in the DerivativeRequirementDecl class. The fix initializes the diffThisType pointer to nullptr and temporarily disables the neural module build in the release CI to prevent the crash until the underlying issue is fully resolved.

Changes:

  • Initialized the diffThisType pointer field to nullptr in DerivativeRequirementDecl to prevent crashes from garbage memory values
  • Added a CMake option to conditionally build the neural module
  • Disabled neural module build in release CI workflow as a temporary workaround

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.

File Description
source/slang/slang-ast-decl.h Initialized diffThisType pointer to nullptr to fix the uninitialized memory bug
source/standard-modules/CMakeLists.txt Added SLANG_ENABLE_NEURAL_MODULE option with conditional build logic
.github/workflows/release.yml Disabled neural module in release builds via CMake flag

#

# Option to enable/disable neural module build (can be disabled if it breaks CI)
# TODO: there is release CI break, so we add this flag to disable the neural module build for now.
Copy link

Copilot AI Feb 3, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected 'there is release CI break' to 'there is a release CI break'.

Suggested change
# TODO: there is release CI break, so we add this flag to disable the neural module build for now.
# TODO: there is a release CI break, so we add this flag to disable the neural module build for now.

Copilot uses AI. Check for mistakes.
@kaizhangNV kaizhangNV added the pr: non-breaking PRs without breaking changes label Feb 3, 2026
@csyonghe csyonghe added this pull request to the merge queue Feb 4, 2026
Merged via the queue into master with commit a9ba4fc Feb 4, 2026
53 of 54 checks passed
@kaizhangNV kaizhangNV deleted the fix_release_ci_broke branch February 17, 2026 20:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr: non-breaking PRs without breaking changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

release CI broken when building neural.slang module

3 participants