On Sat, Jul 07, 2012 at 11:28:25PM +0200, Steven Bosscher wrote:
> 
> Currently, gcc/flags.h and fortran/gfortran.h both include
> coretypes.h. In many fortran/*.c files, flags.h is included before
> gfortran.h, so when flags.h no longer includes coretypes.h (xf.
> http://gcc.gnu.org/ml/gcc-patches/2012-07/msg00275.html) gfortran no
> longer builds without some changes.
> 
> I must say, I am surprised that gfortran.h includes coretypes.h. The
> idea always was to try and keep the front end and the back end as much
> separated as possible, and including coretypes.h in the most important
> front-end header doesn't fit in that picture.  I initially tried to
> just stop including flags.h in e.g. fortran/arith.c because I couldn't
> think of anything that arith.h should know from flags.h, but that
> breaks the build because arith.c looks at 'pedantic' from the
> generated file options.h. Next, I considered adding pedantic to
> gfc_options, but that, of course, clashes with the define in options.h
> (it's a macro so a field named 'pedantic' in gfc_options isn't
> possible. Oh well... I've added removing the middle-end dependencies
> from the front end to my TODO list.
> 
> For now, the solution I disliked the least is to include coretypes.h
> explicitly in the C files that need it. It really doesn't change
> anything (gfortran.h already included it) but it makes this dependency
> explicit, at least.
> 
> Bootstrapped&tested on powerpc64-unknown-linux-gnu and on
> x86_64-unknown-linux-gnu, will commit in a few days.
> 

I think the correct fix is to remove the use of
pendantic in the gfortran FE.  



-- 
Steve

Reply via email to