mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-29 11:41:21 +03:00
Don't take the address of a void object.
GCC 4.5 warns about "extern void _end; &end;". Use char[] instead, as that also doesn't fall foul of a target's .sdata optimizations. Signed-off-by: Richard Henderson <rth@twiddle.net>
This commit is contained in:
@ -47,12 +47,12 @@ frob_brk (void)
|
||||
Later Linux kernels have changed this behavior so that the initial
|
||||
break value is rounded up to the page boundary before we start. */
|
||||
|
||||
extern void *__curbrk attribute_hidden;
|
||||
extern void _end attribute_hidden;
|
||||
void *const endpage = (void *) 0 + (((__curbrk - (void *) 0)
|
||||
extern char *__curbrk attribute_hidden;
|
||||
extern char _end[] attribute_hidden;
|
||||
char *const endpage = (void *) 0 + (((__curbrk - (char *) 0)
|
||||
+ GLRO(dl_pagesize) - 1)
|
||||
& -GLRO(dl_pagesize));
|
||||
if (__builtin_expect (__curbrk >= &_end && __curbrk < endpage, 0))
|
||||
if (__builtin_expect (__curbrk >= _end && __curbrk < endpage, 0))
|
||||
__brk (endpage);
|
||||
#endif
|
||||
}
|
||||
|
Reference in New Issue
Block a user