Mesa incorrectly interprets combination of OpenGL compatibility profile and forward compatibility bit
OpenGL compatibility profile is defined by the OpenGL spec as one that does not mark any features as deprecated or removed.
From OpenGL 4.6 Compatibility Profile, Appendix E.2 "Deprecated and Removed Features", p840 (p864 of the PDF):
At the same time, a forward compatible context is defined as one that removes all the deprecated features.
From OpenGL 4.6 Compatibility Profile, Appendix E "Profiles and the Deprecation Model", p839 (p863 of the PDF):
It is possible to create a forward compatible context of the compatibility profile. Logically, since no features are marked as deprecated, no features should be removed in such a combination. Hence, it should be equivalent to a full context of the compatibility profile. This is further reinforced by the spec explicitly stating that forward compatibility bit only removes deprecated features from the core profile.
From OpenGL 4.6 Compatibility Profile, Appendix E.2.1 "Deprecated But Still Supported Features", p840 (p864 of the PDF):
However, Mesa implicitly converts forward compatible context of the compatibility profile to the core profile:
This leads to a lot of functionality that one should expect to find in the compatibility profile, being removed. Furthermore, this is disallowed by the GLX_ARB_create_context
spec:
If version 3.2 or greater is requested, the context returned may implement any of the following versions:
- The requested profile of the requested version.
- The requested profile of any later version, so long as no features have been removed from that later version and profile.
There is also at least one special case mentioned in the spec, where behaviour of the forward compatible context of the compatibility profile differs from the full context. That's the only example I could find that makes a forward compatibility bit not a complete no-op for compatibility profile:
From OpenGL 4.6 Compatibility Profile, Chapter 8.12 "Depth Component Textures", p290 (p314 of the PDF):
@illia.abernikhin, has been working on this and will be sending MRs shortly.