[perl #42795] [PATCH] NULL function pointer should be a pointer
Hi, Some warnings are being emitted by both msvc and gcc, which I think were caused by this patch. msvc: [10:15] particle src\ops\core_ops.c(14190) : warning C4047: 'initializing' : 'op_func_t' differs [10:15] particle in levels of indirection from 'op_func_t * ' gcc: src/ops/core_ops.c:14190: warning: initialization from incompatible pointer type The line in question is trying to NULL-terminate an array of op_func_t's. The issue is that op_func_t is *already* a pointer type, and this patch changed a function pointer into a pointer to a function pointer. Here's how op_func_t is declared: typedef opcode_t *(*op_func_t)(opcode_t *, Interp *); Steve, does the patch you submitted fix anything for you? (In other words, will it break anything to revert this?) Mark
[perl #42795] [PATCH] NULL function pointer should be a pointer
# New Ticket Created by Steve Peters # Please include the string: [perl #42795] # in the subject line of all future correspondence about this issue. # URL: http://rt.perl.org/rt3/Ticket/Display.html?id=42795 Index: lib/Parrot/Ops2c/Utils.pm == --- lib/Parrot/Ops2c/Utils.pm (revision 18354) +++ lib/Parrot/Ops2c/Utils.pm (working copy) @@ -680,7 +680,7 @@ print $fh @{ $self-{op_func_table} }; print $fh END_C; - (op_func$self-{suffix}_t)0 /* NULL function pointer */ + (op_func$self-{suffix}_t *)0 /* NULL function pointer */ };
[perl #42795] [PATCH] NULL function pointer should be a pointer
Applied in r18355. Thanks! -- Matt Diephouse