Skip to content

[MHW] Fix GCC 16 dangling-pointer build error in AddSamplerStateData#2009

Open
XinfengZhang wants to merge 1 commit into
intel:masterfrom
XinfengZhang:fix2008
Open

[MHW] Fix GCC 16 dangling-pointer build error in AddSamplerStateData#2009
XinfengZhang wants to merge 1 commit into
intel:masterfrom
XinfengZhang:fix2008

Conversation

@XinfengZhang

Copy link
Copy Markdown
Contributor

GCC 16.1.0 fails the build with -Werror=dangling-pointer= because AddSamplerStateData stores the address of the local scratch buffer 'indirectState' into the caller-supplied pParam->Unorm.pIndirectState. The pointer is consumed entirely within indirectState's own scope (SetSamplerState writes through it, then the result is copied to the heap), so this is a false positive, but it breaks the build under -Werror.

Suppress the warning around the assignment in all affected state-heap implementations (gen8/gen9/gen11/gen12/Xe_XPM). The pragma is guarded to GCC >= 12 (where -Wdangling-pointer exists) and excluded for clang to avoid -Wpragmas / -Wunknown-warning-option errors on other toolchains.

Fixes #2008

GCC 16.1.0 fails the build with -Werror=dangling-pointer= because
AddSamplerStateData stores the address of the local scratch buffer
'indirectState' into the caller-supplied pParam->Unorm.pIndirectState.
The pointer is consumed entirely within indirectState's own scope
(SetSamplerState writes through it, then the result is copied to the
heap), so this is a false positive, but it breaks the build under
-Werror.

Suppress the warning around the assignment in all affected state-heap
implementations (gen8/gen9/gen11/gen12/Xe_XPM). The pragma is guarded
to GCC >= 12 (where -Wdangling-pointer exists) and excluded for clang
to avoid -Wpragmas / -Wunknown-warning-option errors on other
toolchains.

Fixes intel#2008

Signed-off-by: Carl.Zhang <carl.zhang@intel.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: Cannot build media driver with GCC 16.1.0

2 participants