X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fglsl%2Fgenerate.cpp;h=8626cac6761c6f42f896b76ef47d53111df5c460;hb=44792dd6fb56a709d9a1d33d7fccc2ab8de905d2;hp=42694a8affeca317ec9e71bf4456dedd522b8bd0;hpb=b94b0c01488e676bc6c64cd7743c5ff50eb15088;p=libs%2Fgl.git diff --git a/source/glsl/generate.cpp b/source/glsl/generate.cpp index 42694a8a..8626cac6 100644 --- a/source/glsl/generate.cpp +++ b/source/glsl/generate.cpp @@ -197,12 +197,7 @@ void VariableResolver::visit(VariableReference &var) var.declaration = i->second; } - if(var.declaration) - { - if(StructDeclaration *strct = dynamic_cast(var.declaration->type_declaration)) - r_members = &strct->members.variables; - } - else + if(!var.declaration) { const map &blocks = stage->interface_blocks; map::const_iterator i = blocks.find("_"+var.name); @@ -230,6 +225,10 @@ void VariableResolver::visit(VariableReference &var) } } + if(var.declaration) + if(StructDeclaration *strct = dynamic_cast(var.declaration->type_declaration)) + r_members = &strct->members.variables; + if(record_target) { if(r_assignment_target)