[MacPorts] #16634: __gnu_inline__ attribute directive and Apple's gcc

MacPorts noreply at macports.org
Mon May 4 10:50:30 PDT 2009


#16634: __gnu_inline__ attribute directive and Apple's gcc
----------------------------------+-----------------------------------------
  Reporter:  jhr@…                |       Owner:  mcalhoun@…           
      Type:  defect               |      Status:  closed               
  Priority:  Normal               |   Milestone:                       
 Component:  ports                |     Version:  1.6.0                
Resolution:  fixed                |    Keywords:  gmp, inline          
      Port:  gmp                  |  
----------------------------------+-----------------------------------------
Changes (by mcalhoun@…):

  * status:  new => closed
  * resolution:  => fixed


Comment:

 Just to summarize the situation:
   * The C99 and GNU extension "extern inline" are
 [http://www.greenend.org.uk/rjk/2003/03/inline.html different].
   * gmp.h requires GNU extension behavior.
   * When in C99 mode is set with -std, gmp.h tries to force GNU extension
 inline behavior using "!__attribute!__ ((!__gnu_inline!__))".

 Problems:
   * In C99 mode, there does not seem to be a way to force the Apple GCC
 4.0 to use GNU inline behavior.
   *  In some older Apple GCC versions, !__GNUC_STDC_INLINE!__ was not
 defined even in C99 mode.

 Possible Solutions:
   * Turn off inlining when using Apple GCC version 4.0 in C99 mode.
   * Patch gmp.h to work with C99 inline behavior.

 The first options is the easiest and was incorporated in r50566.

-- 
Ticket URL: <http://trac.macports.org/ticket/16634#comment:6>
MacPorts <http://www.macports.org/>
Ports system for Mac OS


More information about the macports-tickets mailing list