This is the mail archive of the libc-hacker@sourceware.org mailing list for the glibc project.

Note that libc-hacker is a closed list. You may look at the archives of this list, but subscription and posting are not open.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: About stdlib/strto* change


Jakub Jelinek <jakub@redhat.com> wrote:
> I believe you should match what has been added to strtod_l.c, i.e.:
>  {
>    return INTERNAL (__STRTOD) (nptr, endptr, 0, loc);
>  }
> +#if defined _LIBC
> +libc_hidden_def (__STRTOLD)
> +libc_hidden_ver (__STRTOLD, STRTOLD)
> +#endif
>  weak_alias (__STRTOLD, STRTOLD)
> 
> otherwise calls to strtold_l from within libc.so will go through
> PLT.  stdlib/strtold_l.c is only used on
> sizeof (double) == sizeof (long double) arches, which I'm afraid
> I don't have access to any.

I've tried your patch and got

In file included from wcstold_l.c:32:
../stdlib/strtold_l.c:60: error: 'wcstold_l' undeclared here (not in a function)../stdlib/strtold_l.c:60: warning: type defaults to 'int' in declaration of '__EI_wcstold_l'
../stdlib/strtold_l.c:60: warning: type defaults to 'int' in declaration of '__EI_wcstold_l'

So perhaps, is the patch

 {
   return INTERNAL (__STRTOD) (nptr, endptr, 0, loc);
 }
+#if defined _LIBC && !defined USE_WIDE_CHAR
+libc_hidden_def (__STRTOLD)
+libc_hidden_ver (__STRTOLD, STRTOLD)
+#endif
 weak_alias (__STRTOLD, STRTOLD)

ok?

Regards,
	kaz


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