X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Fglsl%2Fspirv.cpp;h=7d6edf656a4097607e70b1a68208f3c523e9d212;hp=52885342b004492a11cb8e4bb8c61d54801cea79;hb=e484dab089e86e889f007ad362f72337542015a0;hpb=6ce72432215dd686f7c073616a7f3aa34e7d2b8d diff --git a/source/glsl/spirv.cpp b/source/glsl/spirv.cpp index 52885342..7d6edf65 100644 --- a/source/glsl/spirv.cpp +++ b/source/glsl/spirv.cpp @@ -1051,6 +1051,7 @@ void SpirVGenerator::visit(FunctionCall &call) throw internal_error("function call in constant expression"); Id result_type_id = get_id(*call.type); + r_constant_result = false; if(call.constructor) visit_constructor(call, argument_ids, all_args_const); @@ -1574,6 +1575,7 @@ void SpirVGenerator::visit(VariableDeclaration &var) { SetFlag set_const(constant_expression, !current_function); r_expression_result_id = 0; + r_constant_result = false; var.init_expression->visit(*this); init_id = r_expression_result_id; }