Mail Archives: djgpp/1994/11/23/04:33:07
>>>>> On Tue, 22 Nov 1994 16:14:31 -0500 (EST), Kimberley Burchett <OKRA AT max DOT tiac DOT net> said:
> -----------SOURCE-----------
>
> char Map[256][512];
>
> main() {
> } // turns out even memset() isn't needed...
>
> -----------SIZE-----------
> text data bss dec hex filename
> 3008 135168 164 138340 21c64 test
It seems a bug of g++, I can reproduce it under Linux as following:
/home/tmp$ cat tbss.c
char arrary[1024][1024];
main()
{
}
/home/tmp$ gcc -v -o c.out tbss.c
Reading specs from /usr/lib/gcc-lib/i486-linux/2.6.2/specs
gcc version 2.6.2
/usr/lib/gcc-lib/i486-linux/2.6.2/cpp -lang-c -v -undef -D__GNUC__=2 -D__GNUC_MINOR__=6 -Dunix -Di386 -Dlinux -D__unix__ -D__i386__ -D__linux__ -D__unix -D__i386 -D__linux -Asystem(unix) -Asystem(posix) -Acpu(i386) -Amachine(i386) -D__i486__ tbss.c /tmp/cca00379.i
GNU CPP version 2.6.2 (80386, BSD syntax)
#include "..." search starts here:
#include <...> search starts here:
/usr/local/include
/usr/i486-linux/include
/usr/lib/gcc-lib/i486-linux/2.6.2/include
/usr/include
End of search list.
/usr/lib/gcc-lib/i486-linux/2.6.2/cc1 /tmp/cca00379.i -quiet -dumpbase tbss.c -version -o /tmp/cca00379.s
GNU C version 2.6.2 (80386, BSD syntax) compiled by GNU C version 2.6.2.
as -o /tmp/cca003791.o /tmp/cca00379.s
ld -dll-verbose -m486 -o c.out /usr/lib/crt0.o -L/usr/lib/gcc-lib/i486-linux/2.6.2 /tmp/cca003791.o -lgcc -lc -lgcc
ld version 2.5.2 (with BFD 2.5)
/home/tmp$ gcc -v -x c++ -o c++.out tbss.c
Reading specs from /usr/lib/gcc-lib/i486-linux/2.6.2/specs
gcc version 2.6.2
/usr/lib/gcc-lib/i486-linux/2.6.2/cpp -lang-c++ -v -undef -D__GNUC__=2 -D__GNUG__=2 -D__cplusplus -D__GNUC_MINOR__=6 -Dunix -Di386 -Dlinux -D__unix__ -D__i386__ -D__linux__ -D__unix -D__i386 -D__linux -Asystem(unix) -Asystem(posix) -Acpu(i386) -Amachine(i386) -D__i486__ tbss.c /tmp/cca00384.ii
GNU CPP version 2.6.2 (80386, BSD syntax)
#include "..." search starts here:
#include <...> search starts here:
/usr/include/g++
/usr/local/include
/usr/i486-linux/include
/usr/lib/gcc-lib/i486-linux/2.6.2/include
/usr/include
End of search list.
/usr/lib/gcc-lib/i486-linux/2.6.2/cc1plus /tmp/cca00384.ii -quiet -dumpbase tbss.cc -version -o /tmp/cca00384.s
GNU C++ version 2.6.2 (80386, BSD syntax) compiled by GNU C version 2.6.2.
as -o /tmp/cca003841.o /tmp/cca00384.s
ld -dll-verbose -m486 -o c++.out /usr/lib/crt0.o -L/usr/lib/gcc-lib/i486-linux/2.6.2 /tmp/cca003841.o -lgcc -lc -lgcc
ld version 2.5.2 (with BFD 2.5)
/home/tmp$ ls -l c.out c++.out
-rwxr-xr-x 1 dliu other 1061308 Nov 22 23:49 c++.out*
-rwxr-xr-x 1 dliu other 12706 Nov 22 23:48 c.out*
/home/tmp$ size -A c.out c++.out
c.out :
section size addr
.text 4064 4128
.data 4096 8192
.bss 1044620 12288
Total 1052780
c++.out :
section size addr
.text 4064 4128
.data 1052672 8192
.bss 0 1060864
Total 1056736
---
Dong Liu <dliu AT ace DOT njit DOT edu>
Electrical and Computer Engineering Department
New Jersey Institute of Technology, Newark, NJ 07102
- Raw text -