X-Git-Url: http://git.tdb.fi/?p=libs%2Fgl.git;a=blobdiff_plain;f=source%2Fglsl%2Freflect.cpp;h=becc833e28ef7da9c9bbcd5fc5ad6e6fe7d81ce6;hp=e64b9a3c5f175fe6cf3d046f80da15990686456a;hb=d99c2663e8c6a213507878d28d073c732e1e5f7f;hpb=2bf43ec60f148fe2c9a4ed2a322118860be3b25c diff --git a/source/glsl/reflect.cpp b/source/glsl/reflect.cpp index e64b9a3c..becc833e 100644 --- a/source/glsl/reflect.cpp +++ b/source/glsl/reflect.cpp @@ -159,6 +159,25 @@ void TypeComparer::visit(TernaryExpression &ternary) } } +void TypeComparer::visit(FunctionCall &call) +{ + if(FunctionCall *call1 = multi_visit(call)) + { + if(!call1->constructor || !call.constructor) + r_result = false; + else if(call1->name!=call.name) + r_result = false; + else if(call1->arguments.size()!=call.arguments.size()) + r_result = false; + else + { + r_result = true; + for(unsigned i=0; (r_result && iarguments[i], *call.arguments[i]); + } + } +} + void TypeComparer::visit(BasicTypeDeclaration &basic) { if(BasicTypeDeclaration *basic1 = multi_visit(basic))