http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46597

           Summary: configure -enable-checking=... -enable-build-with-cxx
                    and bootstrap is g++ 3.3 hit minor problem
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
        AssignedTo: unassig...@gcc.gnu.org
        ReportedBy: jay.kr...@cornell.edu


I hit an error using g++ 3.3 to bootstrap on Darwin/ppc and configure
-enable-build-with-cxx -enable-checking=...

../../gcc-4.5/gcc/alias.c: In function `rtx_def* find_base_value(rtx_def*)':
../../gcc-4.5/gcc/alias.c:1008: error: cannot convert `rtx_def*' to `const 

    case PLUS:
    case MINUS:
      {
    rtx temp, src_0 = XEXP (src, 0), src_1 = XEXP (src, 1); <== this line 


I suggest therefore rtl.h:


< #if defined ENABLE_RTL_FLAG_CHECKING && GCC_VERSION > 2007
> #if defined ENABLE_RTL_FLAG_CHECKING && ((!defined(__cplusplus) && 
> GCC_VERSION > 2007) || GCC_VERSION > 3003)
#define RTL_FLAG_CHECK1(NAME, RTX, C1) __extension__            \


or even just:
> #if defined ENABLE_RTL_FLAG_CHECKING && GCC_VERSION > 3003


or like, not necessarily in rtl.h:

 #if GCC_VERSION <= 3003
 #undef ENABLE_RTL_FLAG_CHECKING


or

 #if GCC_VERSION <= 3003 && defined(__cplusplus)
 #undef ENABLE_RTL_FLAG_CHECKING

Some allowance might be made for other compilers that implement the extensions
though?
Or, in C++, maybe use extensions less? e.g. inline functions might suit?


Thanks,
 - Jay

Reply via email to