summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/compiler/glsl/ast.h18
-rw-r--r--src/compiler/glsl/ast_to_hir.cpp1
2 files changed, 10 insertions, 9 deletions
diff --git a/src/compiler/glsl/ast.h b/src/compiler/glsl/ast.h
index 157895d0fbd..75018a062e7 100644
--- a/src/compiler/glsl/ast.h
+++ b/src/compiler/glsl/ast.h
@@ -198,6 +198,15 @@ enum ast_operators {
ast_sequence,
ast_aggregate
+
+ /**
+ * Number of possible operators for an ast_expression
+ *
+ * This is done as a define instead of as an additional value in the enum so
+ * that the compiler won't generate spurious messages like "warning:
+ * enumeration value ‘ast_num_operators’ not handled in switch"
+ */
+ #define AST_NUM_OPERATORS (ast_aggregate + 1)
};
/**
@@ -416,15 +425,6 @@ public:
struct _mesa_glsl_parse_state *state);
};
-/**
- * Number of possible operators for an ast_expression
- *
- * This is done as a define instead of as an additional value in the enum so
- * that the compiler won't generate spurious messages like "warning:
- * enumeration value ‘ast_num_operators’ not handled in switch"
- */
-#define AST_NUM_OPERATORS (ast_sequence + 1)
-
class ast_compound_statement : public ast_node {
public:
diff --git a/src/compiler/glsl/ast_to_hir.cpp b/src/compiler/glsl/ast_to_hir.cpp
index d246745ac22..ec12ff81351 100644
--- a/src/compiler/glsl/ast_to_hir.cpp
+++ b/src/compiler/glsl/ast_to_hir.cpp
@@ -1351,6 +1351,7 @@ ast_expression::do_hir(exec_list *instructions,
-1, /* ast_float_constant doesn't conv to ir_expression. */
-1, /* ast_bool_constant doesn't conv to ir_expression. */
-1, /* ast_sequence doesn't convert to ir_expression. */
+ -1, /* ast_aggregate shouldn't ever even get here. */
};
ir_rvalue *result = NULL;
ir_rvalue *op[3];