[Mesa-dev] [Bug 97307] glsl/glcpp/tests/glcpp-test regression

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Thu Aug 11 20:30:57 UTC 2016


https://bugs.freedesktop.org/show_bug.cgi?id=97307

            Bug ID: 97307
           Summary: glsl/glcpp/tests/glcpp-test regression
           Product: Mesa
           Version: git
          Hardware: x86-64 (AMD64)
                OS: All
            Status: NEW
          Keywords: bisected, regression
          Severity: normal
          Priority: medium
         Component: Mesa core
          Assignee: mesa-dev at lists.freedesktop.org
          Reporter: vlee at freedesktop.org
        QA Contact: mesa-dev at lists.freedesktop.org
                CC: idr at freedesktop.org, t_arceri at yahoo.com.au

mesa: 17f1c49b9ad05af4f6482f6fa950e5dcc1a779d1 (master 12.1.0-devel)

Testing ./glsl/glcpp/tests/120-undef-builtin.c... >
src/compiler/glsl/glcpp/tests/120-undef-builtin.c.out
(./glsl/glcpp/tests/120-undef-builtin.c.expected) FAIL
--- ./glsl/glcpp/tests/120-undef-builtin.c.expected     2016-01-26
09:59:33.017797268 -0800
+++ src/compiler/glsl/glcpp/tests/120-undef-builtin.c.out  2016-08-11
10:30:15.630875304 -0700
@@ -1,6 +1,3 @@
-0:1(1): preprocessor error: Built-in (pre-defined) macro names cannot be
undefined.
-0:2(1): preprocessor error: Built-in (pre-defined) macro names cannot be
undefined.
-0:3(1): preprocessor error: Built-in (pre-defined) macro names cannot be
undefined.


50b49d242d702e4728329cc59f87d929963e7c53 is the first bad commit
commit 50b49d242d702e4728329cc59f87d929963e7c53
Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Tue Aug 9 14:32:24 2016 -0700

    glcpp: Only disallow #undef of pre-defined macros on GLSL ES >= 3.00
shaders

    Section 3.4 (Preprocessor) of the GLSL ES 3.00 spec says:

       It is an error to undefine or to redefine a built-in (pre-defined)
       macro name.

    The GLSL ES 1.00 spec does not contain this text.

    Section 3.3 (Preprocessor) of the GLSL 1.30 spec says:

       #define and #undef functionality are defined as is standard for C++
       preprocessors for macro definitions both with and without macro
       parameters.

    At least as far as I can tell GCC allow '#undef __FILE__'.  Furthermore,
    there are desktop OpenGL conformance tests that expect '#undef
    __VERSION__' and '#undef GL_core_profile' to work.

    Fixes:

        GL45-CTS.shaders.preprocessor.definitions.undefine_version_vertex
        GL45-CTS.shaders.preprocessor.definitions.undefine_version_fragment
        GL45-CTS.shaders.preprocessor.definitions.undefine_core_profile_vertex
       
GL45-CTS.shaders.preprocessor.definitions.undefine_core_profile_fragment

    Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
    Reviewed-by: Timothy Arceri <timothy.arceri at collabora.com>
    Cc: mesa-stable at lists.freedesktop.org

:040000 040000 fbe8d2e45f4f1e6755e70b6e6f8fa971701e3ae8
d7c77a29d8aa922a28948df34eca499077eaac45 M      src
bisect run success

-- 
You are receiving this mail because:
You are the assignee for the bug.
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20160811/3700da70/attachment-0001.html>


More information about the mesa-dev mailing list