Hi!

On Mon, 2013-08-05 22:09:45 -0000, olege...@gcc.gnu.org <olege...@gcc.gnu.org> 
wrote:
> Author: olegendo
> Date: Mon Aug  5 22:09:45 2013
> New Revision: 201513
> 
> URL: http://gcc.gnu.org/viewcvs?rev=201513&root=gcc&view=rev
> Log:
>       PR other/12081
>       * recog.h (rtx (*insn_gen_fn) (rtx, ...)): Replace typedef with new
>       class insn_gen_fn.
>       * expr.c (move_by_pieces_1, store_by_pieces_2): Replace argument
>       rtx (*) (rtx, ...) with insn_gen_fn.
>       * genoutput.c (output_insn_data): Cast gen_? function pointers to
>       insn_gen_fn::stored_funcptr.  Add initializer braces.

This probably caused in a powerpc64-linux build:

g++ -c   -g -O2 -DIN_GCC -DCROSS_DIRECTORY_STRUCTURE  -fno-exceptions -fno-rtti 
-fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings 
-Wcast-qual -Wmissing-format-attribute -pedantic -Wno-long-long 
-Wno-variadic-macros -Wno-overlength-strings -fno-common  -DHAVE_CONFIG_H -I. 
-I. -I../../../../gcc/gcc -I../../../../gcc/gcc/. 
-I../../../../gcc/gcc/../include -I../../../../gcc/gcc/../libcpp/include  
-I../../../../gcc/gcc/../libdecnumber -I../../../../gcc/gcc/../libdecnumber/dpd 
-I../libdecnumber -I../../../../gcc/gcc/../libbacktrace    \
                ../../../../gcc/gcc/config/rs6000/rs6000.c -o rs6000.o
In file included from ../../../../gcc/gcc/config/rs6000/rs6000.c:36:0:
../../../../gcc/gcc/config/rs6000/rs6000.c: In function ‘void 
rs6000_emit_swdiv(rtx, rtx, rtx, bool)’:
../../../../gcc/gcc/optabs.h:47:46: error: invalid cast from type ‘const 
insn_gen_fn’ to type ‘gen_2arg_fn_t {aka rtx_def* (*)(rtx_def*, rtx_def*, 
rtx_def*)}’
 #define GEN_FCN(CODE) (insn_data[CODE].genfun)
                                              ^
../../../../gcc/gcc/config/rs6000/rs6000.c:28145:43: note: in expansion of 
macro ‘GEN_FCN’
   gen_2arg_fn_t gen_mul = (gen_2arg_fn_t) GEN_FCN (code);
                                           ^
../../../../gcc/gcc/config/rs6000/rs6000.c: In function ‘void 
rs6000_emit_swrsqrt(rtx, rtx)’:
../../../../gcc/gcc/optabs.h:47:46: error: invalid cast from type ‘const 
insn_gen_fn’ to type ‘gen_2arg_fn_t {aka rtx_def* (*)(rtx_def*, rtx_def*, 
rtx_def*)}’
 #define GEN_FCN(CODE) (insn_data[CODE].genfun)
                                              ^
../../../../gcc/gcc/config/rs6000/rs6000.c:28223:43: note: in expansion of 
macro ‘GEN_FCN’
   gen_2arg_fn_t gen_mul = (gen_2arg_fn_t) GEN_FCN (code);
                                           ^

Other PPC/RS6k targets (ie. rs6000-ibm-aix4.3, ...) seem to be equally
affected.

MfG, JBG

-- 
      Jan-Benedict Glaw      jbg...@lug-owl.de              +49-172-7608481
Signature of:            http://www.chiark.greenend.org.uk/~sgtatham/bugs.html
the second  :

Attachment: signature.asc
Description: Digital signature

Reply via email to