[syslinux:master] memdisk: use char array for external symbols

syslinux-bot for H. Peter Anvin hpa at zytor.com
Sun Nov 14 13:15:23 PST 2010


Commit-ID:  89d5fe9a7f96b29d1a24e4a8ab7f81764c52e2e6
Gitweb:     http://syslinux.zytor.com/commit/89d5fe9a7f96b29d1a24e4a8ab7f81764c52e2e6
Author:     H. Peter Anvin <hpa at zytor.com>
AuthorDate: Sun, 14 Nov 2010 13:13:25 -0800
Committer:  H. Peter Anvin <hpa at zytor.com>
CommitDate: Sun, 14 Nov 2010 13:13:25 -0800

memdisk: use char array for external symbols

Use "extern const char foo[];" for an external symbol rather than
"extern void" (gcc 4.5 fix.)

Signed-off-by: H. Peter Anvin <hpa at zytor.com>


---
 memdisk/setup.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/memdisk/setup.c b/memdisk/setup.c
index 3f69cd3..4315189 100644
--- a/memdisk/setup.c
+++ b/memdisk/setup.c
@@ -119,7 +119,7 @@ static const char *getcmditem(const char *what)
  */
 #define UNZIP_ALIGN 512
 
-extern void _end;		/* Symbol signalling end of data */
+extern const char _end[];		/* Symbol signalling end of data */
 
 void unzip_if_needed(uint32_t * where_p, uint32_t * size_p)
 {
@@ -171,8 +171,8 @@ void unzip_if_needed(uint32_t * where_p, uint32_t * size_p)
 			? 0xFFFFFFFF : (uint32_t) ranges[i + 1].start);
 
 	    /* Make sure we don't overwrite ourselves */
-	    if (startrange < (uint32_t) & _end)
-		startrange = (uint32_t) & _end;
+	    if (startrange < (uint32_t) _end)
+		startrange = (uint32_t) _end;
 
 	    /* Allow for alignment */
 	    startrange =



More information about the Syslinux-commits mailing list