# New Ticket Created by Leopold Toetsch # Please include the string: [perl #17025] # in the subject line of all future correspondence about this issue. # <URL: http://rt.perl.org/rt2/Ticket/Display.html?id=17025 >
If this one is already in queue, bare with me. find_op does either die or return false positives for non existing ops. Please[1] apply, leo [1] I'd really like to get rid of my ever increasing imcc changes (~100K +100K generated parser/lexer), but I can't, because of core damage. -- attachment 1 ------------------------------------------------------ url: http://rt.perl.org/rt2/attach/36594/29537/873f17/ops2c.pl.diff
--- ops2c.pl Wed May 15 08:23:22 2002 +++ /home/lt/src/parrot-007/ops2c.pl Sat Aug 31 19:57:13 2002 @@ -401,8 +401,7 @@ int op; int i = 2; if((op = op_hash_jump[bucket]) == 0) { - printf("Invalid bucket for %s\\n", name); - exit(0); + return -1; } for(;;) { if(name[i] != op_hash[op].name[i]) { @@ -411,8 +410,12 @@ return -1; continue; } - if(name[i] == 0) - return op_hash[op].opcode; + if(name[i] == 0) { + int n = op_hash[op].opcode; + if (strcmp(op_info_table[n].full_name, name)) + return -1; + return n; + } i++; } }