On Wed, 5 Oct 2005, Kean Johnston wrote:

> Hi,
> 
> Is there any reason why *all* of the macros in target-defs.h
> are not conditionalized? target-defs.h is always included after
> tm.h, so if the target specific include sets any of the macros
> that are not protected in target-defs.h, they get overwritten.
> Yes, you are warned, so my question is, is the intent to only
> conditioalize those macros that have actually been defined
> ib the target header file and to adjust target-defs.h  on a
> case by case basis, or should I just clean up target-defs.h
> and protect *all* of the macros from redefining what may
> have been set in tm.h?

Are the comment

/* Note that if one of these macros must be defined in an OS .h file
   rather than the .c file, then we need to wrap the default
   definition in a #ifndef, since files include tm.h before this one.  */

and the description in tm.texi of these macros as defined in the .c file 
(not in tm.h) insufficiently clear about the principle?  Ideally the 
conditional cases would be cleaned up so that the macros do get defined 
only in the .c files and their definitions become no longer visible to 
most of GCC.  But it can be simpler when transitioning from target macros 
to the target structure to define the TARGET_* in tm.h as an interim 
state.

-- 
Joseph S. Myers               http://www.srcf.ucam.org/~jsm28/gcc/
    [EMAIL PROTECTED] (personal mail)
    [EMAIL PROTECTED] (CodeSourcery mail)
    [EMAIL PROTECTED] (Bugzilla assignments and CCs)

Reply via email to