summaryrefslogtreecommitdiffstats
path: root/src/glsl/ast.h
diff options
context:
space:
mode:
authorIan Romanick <[email protected]>2010-10-05 16:38:47 -0700
committerIan Romanick <[email protected]>2010-10-08 14:21:22 -0700
commite24d35a5b59ca1e75b69a32db6294787378a963f (patch)
tree3034d32835376465fe27a89b5fe46e9b69d6d285 /src/glsl/ast.h
parent5ff4cfb788291ef7c8d6412d65aee708b41bac86 (diff)
glsl: Wrap ast_type_qualifier contents in a struct in a union
This will ease adding non-bit fields in the near future.
Diffstat (limited to 'src/glsl/ast.h')
-rw-r--r--src/glsl/ast.h39
1 files changed, 22 insertions, 17 deletions
diff --git a/src/glsl/ast.h b/src/glsl/ast.h
index d7bf90925cc..5fa932ec806 100644
--- a/src/glsl/ast.h
+++ b/src/glsl/ast.h
@@ -324,23 +324,28 @@ enum {
};
struct ast_type_qualifier {
- unsigned invariant:1;
- unsigned constant:1;
- unsigned attribute:1;
- unsigned varying:1;
- unsigned in:1;
- unsigned out:1;
- unsigned centroid:1;
- unsigned uniform:1;
- unsigned smooth:1;
- unsigned flat:1;
- unsigned noperspective:1;
-
- /** \name Layout qualifiers for GL_ARB_fragment_coord_conventions */
- /*@{*/
- unsigned origin_upper_left:1;
- unsigned pixel_center_integer:1;
- /*@}*/
+ union {
+ struct {
+ unsigned invariant:1;
+ unsigned constant:1;
+ unsigned attribute:1;
+ unsigned varying:1;
+ unsigned in:1;
+ unsigned out:1;
+ unsigned centroid:1;
+ unsigned uniform:1;
+ unsigned smooth:1;
+ unsigned flat:1;
+ unsigned noperspective:1;
+
+ /** \name Layout qualifiers for GL_ARB_fragment_coord_conventions */
+ /*@{*/
+ unsigned origin_upper_left:1;
+ unsigned pixel_center_integer:1;
+ /*@}*/
+ } q;
+ unsigned i;
+ } flags;
};
class ast_struct_specifier : public ast_node {