]> git.tdb.fi Git - libs/gl.git/blobdiff - source/glsl/debug.cpp
Add support for function overloading
[libs/gl.git] / source / glsl / debug.cpp
index ef9e3e0eafc325a92f3bf389329c3efb3563b738..dd9db2f8ff760bdd92cd8e37fa24baa8141ee865 100644 (file)
@@ -393,7 +393,7 @@ void DumpTree::visit(InterfaceBlock &block)
 
 void DumpTree::visit(FunctionDeclaration &func)
 {
-       string text = format("%%%d %s %s", get_label(func), func.return_type, func.name);
+       string text = format("%%%d %s %s%s", get_label(func), func.return_type, func.name, (func.signature.empty() ? "(?)" : func.signature));
        if(func.source==BUILTIN_SOURCE)
                text += " (builtin)";
        else if(!func.definition)
@@ -401,6 +401,8 @@ void DumpTree::visit(FunctionDeclaration &func)
        append(text);
 
        begin_sub();
+       if(func.return_type_declaration)
+               append(format("Return type: %%%d %s", get_label(*func.return_type_declaration), func.return_type_declaration->name));
        for(NodeArray<VariableDeclaration>::const_iterator i=func.parameters.begin(); i!=func.parameters.end(); ++i)
                (*i)->visit(*this);
        last_branch();