This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

unwind-dw2-fde.c change breaks AIX

2001-05-22  Richard Henderson  <>

        * unwind-dw2-fde.c (__deregister_frame_info): Stringize use
        of __USER_LABEL_PREFIX__.

is breaking GCC on AIX.  The problem is __USER_LABEL_PREFIX__.  What is
that macro suppose to do?  In config/rs6000/aix.h it is defined a "." .  I
could understand a prefix for a "label" but not for a function name.

	The alias is performing the substitution, but the result is not
valid on AIX.

void *
__deregister_frame_info (void *)

is producing

      .set .__deregister_frame_info,..__deregister_frame_info_bases
      .set    __deregister_frame_info,.__deregister_frame_info_bases

but ..__deregister_frame_info_bases does not exist: there are one too many
dots in the prefix -- exactly the value of __USER_LABEL_PREFIX__.

      .set .__deregister_frame_info,.__deregister_frame_info_bases
      .set    __deregister_frame_info,__deregister_frame_info_bases

__USER_LABEL_PREFIX__ was defined that way on Mar 16 by Geoff, but I
cannot find a ChangeLog entry, discussion on gcc-patches, or a reason for
the change.

	Because this change completely breaks the build on AIX, it is
extremely serious.

Thanks, David

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]