This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


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

preprocessor/2928: out of memory during macros expansion



>Number:         2928
>Category:       preprocessor
>Synopsis:       out of memory during macros expansion
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu May 24 12:56:00 PDT 2001
>Closed-Date:
>Last-Modified:
>Originator:     Yann Droneaud
>Release:        gcc >= 2.95.2
>Organization:
>Environment:
i586-pc-linux-gnu
linux-2.4.3
glibc-2.2.3
gcc-2.95.3

>Description:

compile the code with flag -O2 (so using optimized string macro from glibc in bits/string2.h)

lead to 

"cpp0: Memory exhausted." with gcc-2.95.3

with gcc-3.0 snapshot:
    Reading specs from /usr/local/bin/../lib/gcc-lib/i386-pc-linux-gnu/3.0/specs
    Configured with: ../configure --prefix=/tmp/gcc-20010524-root/usr/local --enable-shared --enable-threads --disable-checking i386-pc-linux-gnu : (reconfigured) 
    Thread model: posix
    gcc version 3.0 20010524 (prerelease)
     /usr/local/bin/../lib/gcc-lib/i386-pc-linux-gnu/3.0/cc1 -lang-c -v -iprefix /usr/local/bin/../lib/gcc-lib/i386-pc-linux-gnu/3.0/ -D__GNUC__=3 -D__GNUC_MINOR__=0 -D__GNUC_PATCHLEVEL__=0 -D__ELF__ -Dunix -Dlinux -D__ELF__ -D__unix__ -D__linux__ -D__unix -D__linux -Asystem=posix -D__OPTIMIZE__ -D__STDC_HOSTED__=1 -W -Wall -Acpu=i386 -Amachine=i386 -Di386 -D__i386 -D__i386__ -D__tune_i386__ /usr/tmp/@6807.7.c -quiet -dumpbase @6807.7.c -O2 -W -Wall -version -o /tmp/ccbLIkCc.s
    GNU CPP version 3.0 20010524 (prerelease) (cpplib) (i386 Linux/ELF)
    GNU C version 3.0 20010524 (prerelease) (i386-pc-linux-gnu)
            compiled by GNU C version 3.0 20010524 (prerelease).
    ignoring nonexistent directory "/usr/local/i386-pc-linux-gnu/include"
    ignoring nonexistent directory "/tmp/gcc-20010524-root/usr/local/lib/gcc-lib/i386-pc-linux-gnu/3.0/include"
    ignoring nonexistent directory "/tmp/gcc-20010524-root/usr/local/lib/gcc-lib/i386-pc-linux-gnu/3.0/../../../../i386-pc-linux-gnu/include"
    #include "..." search starts here:
    #include <...> search starts here:
     /usr/local/lib/gcc-lib/i386-pc-linux-gnu/3.0/include
     /usr/local/include
     /usr/include
    End of search list.

    cc1: Cannot allocate 50331648 bytes after allocating 650952 bytes
>How-To-Repeat:
compile the source with -O2 on a glibc system
(__OPTIMIZE__ defined)
>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="traite.c"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="traite.c"

I2luY2x1ZGUgPHN0ZGxpYi5oPgojaW5jbHVkZSA8c3RkaW8uaD4KI2luY2x1ZGUgPHN0cmluZy5o
PgoKaW50Cm1haW4gKHZvaWQpCnsKICBjaGFyICpmaWNoaWVyRW50cmVlOwogIGNoYXIgKmZpY2hp
ZXJTb3J0aWU7CiAgY2hhciB0ZW1wc1sxMDI0XTsKICBpbnQgcmVzOwogIEZJTEUgKmZwaW47CiAg
RklMRSAqZnBvdXQ7CiAgY2hhciBub21bMjU2XSA9ICIiOwogIGNoYXIgcHJlbm9tWzI1Nl0gPSAi
IjsKICBmbG9hdCBwb2lkczsKICBmbG9hdCB0YWlsbGU7CiAgY2hhciBNZXNzYWdlWzI1Nl0gPSAi
IjsKICBmbG9hdCBzb21tZXBkczsKICBmbG9hdCBuYjsKICBjaGFyIE1ldWhbMjU2XSA9ICIiOwog
IGZsb2F0IHBkczsKICBmbG9hdCBtb3lwZHM7CiAgZmljaGllckVudHJlZSA9ICJkb25uZWVzLmRh
dCI7CiAgZmljaGllclNvcnRpZSA9ICJyZXN1bHRhdDIudHh0IjsKCiAgcHJpbnRmICgiXG5PdXZl
cnR1cmUgZHUgZmljaGllciAlcyA6IFxuIiwgZmljaGllckVudHJlZSk7CiAgZnBpbiA9IGZvcGVu
IChmaWNoaWVyRW50cmVlLCAiciIpOwogIGlmIChmcGluID09IE5VTEwpCiAgICB7CiAgICAgIGZw
cmludGYgKHN0ZGVyciwgIlxuTEUgRklDSElFUiAlcyBORSBQRVVUIEVUUkUgT1VWRVJUXG5cblxu
IiwKCSAgICAgICBmaWNoaWVyRW50cmVlKTsKICAgICAgZXhpdCAoMCk7CiAgICB9CiAgZnBvdXQg
PSBmb3BlbiAoZmljaGllclNvcnRpZSwgInciKTsKICBpZiAoZnBvdXQgPT0gTlVMTCkKICAgIHsK
ICAgICAgZnByaW50ZiAoc3RkZXJyLCAiXG5MRSBGSUNISUVSICVzIE5FIFBFVVQgRVRSRSBPVVZF
UlRcblxuXG4iLAoJICAgICAgIGZpY2hpZXJTb3J0aWUpOwogICAgICBleGl0ICgwKTsKICAgIH0K
ICBzdHJjcHkgKE1lc3NhZ2UsICJIaWhpXG4iKTsKICBmcHJpbnRmIChmcG91dCwgTWVzc2FnZSk7
CiAgc29tbWVwZHMgPSAwLjA7CiAgbmIgPSAwLjA7CiAgcmVzID0gZnNjYW5mIChmcGluLCAiJXMi
LCBub20pOwogIHJlcyA9IGZzY2FuZiAoZnBpbiwgIiVzIiwgcHJlbm9tKTsKICByZXMgPSBmc2Nh
bmYgKGZwaW4sICIlZiIsICZwb2lkcyk7CiAgcmVzID0gZnNjYW5mIChmcGluLCAiJWYiLCAmdGFp
bGxlKTsKICB3aGlsZSAocmVzICE9IEVPRikKICAgIHsKICAgICAgZnByaW50ZiAoZnBvdXQsICJU
b3RvPSgiKTsKICAgICAgZnByaW50ZiAoZnBvdXQsICIlaSIsIDIpOwogICAgICBmcHJpbnRmIChm
cG91dCwgIiwiKTsKICAgICAgZnByaW50ZiAoZnBvdXQsICIlZyIsIDAuNik7CiAgICAgIGZwcmlu
dGYgKGZwb3V0LCAiKSIpOwogICAgICBzdHJjcHkgKE1ldWgsICJNZXVoIik7CiAgICAgIG5iID0g
bmIgKyAxLjA7CiAgICAgIHN0cmNweSAocHJlbm9tLCAiQmxhaCIpOwogICAgICBzdHJjcHkgKHBy
ZW5vbSwKCSAgICAgIChzdHJjcHkKCSAgICAgICAodGVtcHMsCgkJKHN0cmNweQoJCSAodGVtcHMs
CgkJICAoc3ByaW50ZgoJCSAgICh0ZW1wcywgIiVzJWciLAoJCSAgICAoc3RyY3B5CgkJICAgICAo
dGVtcHMsCgkJICAgICAgKHN0cmNweSAodGVtcHMsICJQcmVub20gPSAiKSwgc3RyY2F0ICh0ZW1w
cywgcHJlbm9tKSwKCQkgICAgICAgdGVtcHMpKSwgc3RyY2F0ICh0ZW1wcywgIigiKSwgdGVtcHMp
LCBuYiksIHRlbXBzKSksCgkJIHN0cmNhdCAodGVtcHMsICIpIiksIHRlbXBzKSksIHN0cmNhdCAo
dGVtcHMsICJcdCIpLCB0ZW1wcykpOwogICAgICBzdHJjcHkgKG5vbSwKCSAgICAgIChzdHJjcHkK
CSAgICAgICAodGVtcHMsCgkJKHN0cmNweQoJCSAodGVtcHMsCgkJICAoc3RyY3B5CgkJICAgKHRl
bXBzLAoJCSAgICAoc3ByaW50ZgoJCSAgICAgKHRlbXBzLCAiJXMlZyIsCgkJICAgICAgKHN0cmNw
eQoJCSAgICAgICAodGVtcHMsCgkJCShzcHJpbnRmICh0ZW1wcywgIiVzJWciLCAiTm9tID0gIiwg
MTUuNiksIHRlbXBzKSksCgkJICAgICAgIHN0cmNhdCAodGVtcHMsICIgLS0gIiksIHRlbXBzKSwg
Mi4wKSwgdGVtcHMpKSwKCQkgICBzdHJjYXQgKHRlbXBzLCAiOjoiKSwgdGVtcHMpKSwgc3RyY2F0
ICh0ZW1wcywgbm9tKSwKCQkgdGVtcHMpKSwgc3RyY2F0ICh0ZW1wcywgIlx0IiksIHRlbXBzKSk7
CiAgICAgIGZwcmludGYgKGZwb3V0LCBwcmVub20pOwogICAgICBmcHJpbnRmIChmcG91dCwgbm9t
KTsKICAgICAgcGRzID0gKHRhaWxsZSAqIHRhaWxsZSk7CiAgICAgIHBkcyA9IHBvaWRzIC8gcGRz
OwogICAgICBmcHJpbnRmIChmcG91dCwgIiVnIiwgcGRzKTsKICAgICAgc29tbWVwZHMgPSBzb21t
ZXBkcyArIHBvaWRzOwogICAgICBmcHJpbnRmIChmcG91dCwgIlxuIik7CiAgICAgIHJlcyA9IGZz
Y2FuZiAoZnBpbiwgIiVzIiwgbm9tKTsKICAgICAgcmVzID0gZnNjYW5mIChmcGluLCAiJXMiLCBw
cmVub20pOwogICAgICByZXMgPSBmc2NhbmYgKGZwaW4sICIlZiIsICZwb2lkcyk7CiAgICAgIHJl
cyA9IGZzY2FuZiAoZnBpbiwgIiVmIiwgJnRhaWxsZSk7CgogICAgfQogIG1veXBkcyA9IHNvbW1l
cGRzIC8gbmI7CgogIGZjbG9zZSAoZnBpbik7CiAgZmNsb3NlIChmcG91dCk7CgogIHJldHVybiAw
Owp9Cg==


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