Path: utzoo!telly!ddsw1!lll-winken!uunet!bu-cs!bloom-beacon!tut.cis.ohio-state.edu!UMN-CS.CS.UMN.EDU!ehr%mouse From: ehr%mouse@UMN-CS.CS.UMN.EDU (Wm Ehrich) Newsgroups: gnu.gcc.bug Subject: Bugs in gcc (I'm trying to get g++ working): Message-ID: <8809272301.AA01392@mouse.> Date: 27 Sep 88 23:01:55 GMT Sender: daemon@tut.cis.ohio-state.edu Distribution: gnu Organization: GNUs Not Usenet Lines: 54 tm-sparc.h has a pair of definitions which can't be compiled when TYPE == 0 because TREE_ADDRESSABLE makes a form like (0)->blah . Lisp would have ignored this because the first part of the || clause was satisfied, but the c compiler (Sun 4.0) stops on an error. I made a quick, dirty fix to get it working by defining extra macros (.._t0) for the special case, but there must be a more elegant fix. #define FUNCTION_ARG(CUM, MODE, TYPE, NAMED) \ ((CUM) < NPARM_REGS && ((TYPE)==0 || ! TREE_ADDRESSABLE (TYPE)) \ ? gen_rtx (REG, (MODE), BASE_PASSING_ARG_REG (MODE) + (CUM)) : 0) #define FUNCTION_ARG_t0(CUM, MODE, TYPE, NAMED) \ ((CUM) < NPARM_REGS \ ? gen_rtx (REG, (MODE), BASE_PASSING_ARG_REG (MODE) + (CUM)) : 0) #define FUNCTION_ARG_PARTIAL_NREGS(CUM, MODE, TYPE, NAMED) \ (((CUM) < NPARM_REGS && ((TYPE)==0 || ! TREE_ADDRESSABLE (TYPE)) \ && ((CUM) \ + ((MODE) == BLKmode \ ? (int_size_in_bytes (TYPE) + 3) / 4 \ : (GET_MODE_SIZE (MODE) + 3) / 4)) - NPARM_REGS > 0) \ ? (NPARM_REGS - (CUM)) \ : 0) #define FUNCTION_ARG_PARTIAL_NREGS_t0(CUM, MODE, TYPE, NAMED) \ (((CUM) < NPARM_REGS \ && ((CUM) \ + ((MODE) == BLKmode \ ? (int_size_in_bytes (TYPE) + 3) / 4 \ : (GET_MODE_SIZE (MODE) + 3) / 4)) - NPARM_REGS > 0) \ ? (NPARM_REGS - (CUM)) \ : 0) The references must be changed in expr.c Now I'm stuck on: ehr: make CC=stage1/gcc CFLAGS="-g -O -Bstage1/" stage1/gcc -g -O -Bstage1/ -DGCC_INCLUDE_DIR=\"/usr/local/lib/gcc-include\" \ -DGPLUSPLUS_INCLUDE_DIR=\"/usr/local/lib/g++-include\" -c cccp.c stage1/gcc: Program cc1 got fatal signal 6. *** Error code 1 make: Fatal error: Command failed for target `cccp.o' The abort is from the default clause at the very end of final.c any suggestions? -- Bill Ehrich ehrich@vx.acss.umn.edu Control Data (612) 853-6227 Box 1249 Minneapolis, Minnesota 55440