KhronosGroup / KhronosGroup/glslang

GL_ARB_bindless_texture incorrectly attributes "bound" samplers/images as "bindless"

Open
#3,211 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
3.6k
Forks
989
Avg merge
1d 2h
Merged PRs (30d)
31

Description

In the test shader GL_ARB_bindless_texture.frag.out, s5 defined under uniform block **uniform BB {sampler2D s5;} bbs5[2];** is mis-attributed as bindless. As per section 4.4.6 of https://registry.khronos.org/OpenGL/extensions/ARB/ARB_bindless_texture.txt if there is no qualifier, then default should be "bound"

" In the absence of these qualifiers, sampler and image uniforms are considered "bound".

Pasting the log excerpt from GL_ARB_bindless_texture.frag.out
```
0:45 s5: direct index for structure (layout( column_major shared layoutBindlessSampler) uniform sampler2D)
0:45 indirect index (layout( column_major shared) temp block{layout( column_major shared layoutBindlessSampler) uniform sampler2D s5})
0:45 'bbs5' (layout( column_major shared) uniform 2-element array of block{layout( column_major shared layoutBindlessSampler) uniform sampler2D s5})
0:45 'index' ( uniform int)

```

Contributor guide

Open the contributing guide

Research direction

Start with GL_ARB_bindless_texture.frag.out and compare the reported qualifier for s5 against section 4.4.6 of the ARB_bindless_texture specification. Trace the compiler path that produces this diagnostic for the uniform block declaration. Done means the test output attributes an unqualified sampler as bound rather than bindless, with the relevant test still passing.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
compilers, testing-qa
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.