<div dir="ltr"><div>I'd use an enum with values like (glcDefaultProfile, glcCoreProfile, glcCompatibilityProfile). Default would leave things as-is (when versioning is introduced to backends that currently do not support it, it will either use a backend-specific default or leave it unspecified where possible), Core will explicitly request a core profile and Compatibility will explicitly request a compatibility profile. Under OSes where compatibility isn't available, the context creation would fail.<br><br></div>For bonus points, i'd rename glcCoreProfile to glcRequireCoreProfile and instead of glcCompatibilityProfile i'd use glcPreferCompatibilityProfile and glcRequireCompatibilityProfile. glcRequireCoreProfile would work like above, glcPreferCompatibilityProfile will first try to use the compatibility profile but fallback to core if not available (so that the drivers avoid the extra checks) and glcRequireCompatibilityProfile will fail if the compatibility profile doesn't exist - basically having the profiles as glcDefaultProfile, glcPreferCompatibilityProfile, glcRequireCompatibilityProfile and glcRequireCoreProfile.<br><br><br><br></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, May 26, 2017 at 6:40 PM, Mattias Gaertner <span dir="ltr"><<a href="mailto:nc-gaertnma@netcologne.de" target="_blank">nc-gaertnma@netcologne.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Fri, 26 May 2017 18:21:47 +0300<br>
Kostas Michalopoulos <<a href="mailto:badsectoracula@gmail.com">badsectoracula@gmail.com</a>> wrote:<br>
<br>
>[...]<br>
<span class="">> I think the control should gain a Profile attribute to solve this.<br>
<br>
</span>How would that "Profile attribute" look like?<br>
<span class="im HOEnZb"><br>
> And<br>
> while at it, also a ForwardCompatible attribute for debugging (forward<br>
> compatible contexts disable any deprecated functionality, but they can also<br>
> slow down rendering due to extra tests, so they are only good for debugging<br>
> code).<br>
<br>
</span><span class="HOEnZb"><font color="#888888">Mattias<br>
</font></span><div class="HOEnZb"><div class="h5">______________________________<wbr>_________________<br>
fpc-devel maillist  -  <a href="mailto:fpc-devel@lists.freepascal.org">fpc-devel@lists.freepascal.org</a><br>
<a href="http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel" rel="noreferrer" target="_blank">http://lists.freepascal.org/<wbr>cgi-bin/mailman/listinfo/fpc-<wbr>devel</a><br>
</div></div></blockquote></div><br></div>