[Ada] Fix bootstrapping on darwin9/10 (PR ada/64349)

Iain Sandoe iain@codesourcery.com
Fri Jan 30 18:13:00 GMT 2015


Hi Tristan,

On 30 Jan 2015, at 15:13, Arnaud Charlet wrote:

> Avoid possible warning on darwin during compiler build.

it's not "just a warning" it's a documented incorrect usage which causes a link error (and thus bootstrap fail) on systems that are not using the catch-all "-Wl, -undefined, dynamic_lookup".

> Should hopefully close PR 64349,

I don't think this is going to work because ... 
... as I pointed out before... 
(and provided a working patch to resolve)....

char **
__gnat_environ (void)
{
#if defined (VMS) || defined (RTX)
  /* Not implemented */
  return NULL;
#elif defined (__MINGW32__)
  return _environ;
#elif defined (sun)
  extern char **_environ;
  return _environ;
#elif ! (defined (__vxworks))

^^^^^^ __vxworks will not be defined by anything other than a vxworks compiler, I'd assume (it is certainly not defined by Darwin toolchains)

  extern char **environ;
  return environ;

vvvvvvv so I don't see how this case will ever be exercised.
#elif defined (__APPLE__) && !defined (__arm__)
  return *_NSGetEnviron ();
#else
  return environ;
#endif
}



> committed on trunk
> 
> 2015-01-30  Tristan Gingold  <gingold@adacore.com>
> 
> 	PR ada/64349
> 	* env.c: Move vxworks and darwin includes out of #ifdef IN_RTS.
> 
> <difs.txt>




More information about the Gcc-patches mailing list