X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fglsl%2Fgenerate.cpp;h=0a469a46e1dd79b07ad73b82d594e41c11fd5749;hb=fd2bdf8ea9ae87ddbfed0129f07e695671ab5b13;hp=71b35b2c59f3ef8217db37d32b93123da763d047;hpb=804b3a42b84efa8a8176f68766c016292309e09c;p=libs%2Fgl.git diff --git a/source/glsl/generate.cpp b/source/glsl/generate.cpp index 71b35b2c..0a469a46 100644 --- a/source/glsl/generate.cpp +++ b/source/glsl/generate.cpp @@ -295,7 +295,7 @@ void VariableResolver::visit(FunctionCall &call) void VariableResolver::visit(StructDeclaration &strct) { TraversingVisitor::visit(strct); - stage->types[strct.name] = &strct; + stage->types.insert(make_pair(strct.name, &strct)); } void VariableResolver::visit(VariableDeclaration &var) @@ -308,16 +308,16 @@ void VariableResolver::visit(VariableDeclaration &var) var.interface = block_interface; TraversingVisitor::visit(var); - current_block->variables[var.name] = &var; + current_block->variables.insert(make_pair(var.name, &var)); } void VariableResolver::visit(InterfaceBlock &iface) { /* Block names can't be used for any other identifiers so we can put them in the same map with instance names. */ - stage->interface_blocks[iface.name] = &iface; + stage->interface_blocks.insert(make_pair(iface.name, &iface)); if(!iface.instance_name.empty()) - stage->interface_blocks[iface.instance_name] = &iface; + stage->interface_blocks.insert(make_pair(iface.instance_name, &iface)); SetForScope set_iface(block_interface, iface.interface); TraversingVisitor::visit(iface); @@ -443,7 +443,7 @@ VariableDeclaration *InterfaceGenerator::generate_interface(VariableDeclaration } iface_target_block->body.insert(iface_insert_point, iface_var); - iface_target_block->variables[name] = iface_var; + iface_target_block->variables.insert(make_pair(name, iface_var)); return iface_var; } @@ -472,9 +472,9 @@ InterfaceBlock *InterfaceGenerator::generate_interface(InterfaceBlock &out_block } iface_target_block->body.insert(iface_insert_point, in_block); - stage->interface_blocks[in_block->name] = in_block; + stage->interface_blocks.insert(make_pair(in_block->name, in_block)); if(!in_block->instance_name.empty()) - stage->interface_blocks[in_block->instance_name] = in_block; + stage->interface_blocks.insert(make_pair(in_block->instance_name, in_block)); SetFlag set_scope(function_scope, false); SetForScope set_block(current_block, &stage->content);