diff --git a/src/post_modules/GTK/build_pgtk.pike b/src/post_modules/GTK/build_pgtk.pike index ced14ada4831524f72c83c3113f739d8cf62fc40..83b00f4132e83bc7e2fc2c161d25359203cd1ba9 100755 --- a/src/post_modules/GTK/build_pgtk.pike +++ b/src/post_modules/GTK/build_pgtk.pike @@ -132,18 +132,21 @@ void emit_program_block(mapping block, string cl) foreach(sort(indices(block)), string f) { _num_functions++; + + // TODO: Add real type parser here, and generade ADD_FUNCTION instead + // of add function if( search( block[f], "()" ) != -1 || - search( block[f], "(:" ) != -1 || + search( block[f], "(:" ) != -1 || search( block[f], ":)" ) != -1 || search( block[f], " " ) != -1 || - sizeof(block[f]/")") != sizeof( block[f] / "(" ) || + (sizeof(block[f]/")") != sizeof( block[f] / "(" )) || ((sizeof(block[f]/")") != sizeof( block[f] / ":" )+ sizeof(block[f]/"array")-1) && (sizeof(block[f]/")") != sizeof( block[f] / ":" )) ) || search( block[f], "function" ) == -1) - { + if( block[f] != "\"function(array:object)\"" ) werror(lines[cl+f]+": Warning: suspicious type "+block[f]+"\n"); - } + switch(f) { case "union":