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


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: [PATCH] BZ #14545: Always check dtv before freeing dtv[-1]


> I don't see how
> 
> #ifndef SHARED
> # define EXTERN extern
> # define GL(name) _##name
> #else
> 
> #ifndef SHARED
> # define _dl_initial_dtv ((void *) &_dl_static_dtv[1])
> #endif
> 
> will work since GL(dl_initial_dtv)) will be expanded to
> -(void *) &_dl_static_dtv[1]).

Huh?  Did you try it?

GL(dl_initial_dtv) becomes _dl_initial_dtv and then that
becomes ((void *) &_dl_static_dtv[1]).  No problem.

Even translating what I presume were your typos to:
  _((void *) &_dl_static_dtv[1])
your expectation of that result indicates either a misunderstanding of
cpp semantics so thorough I can't quite imagine what you think they are,
or just a braino.


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