This is the mail archive of the gcc-prs@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]
Other format: [Raw text]

c++/10300: array-new (nothrow) in templated inner class crashes on NULL return


>Number:         10300
>Category:       c++
>Synopsis:       array-new (nothrow) in templated inner class crashes on NULL return
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Apr 02 23:46:01 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     jaf at lcsaudio dot com
>Release:        unknown-1.0
>Organization:
>Environment:
Red Hat Linux 8 on a Dual P3/650 256MB
>Description:
The attached program demonstrates a bug in gcc.  It simulates
an out-of-memory condition by overloading the
new (nothrow) operators to return NULL, and then tries
to allocate an array of items that are the inner class
of a template.  new (nothrow) should return NULL, but
instead, the program segfaults.  The fault occurs after
the custom new operator returns NULL, but before the
new (nothrow) command completes.
>How-To-Repeat:
g++ membug.zpp
./membug

(should segfault after several lines of output)
>Fix:
This program should leak a bit of memory, but not segfault.
>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/x-gzip; name="membug.tar.gz"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="membug.tar.gz"

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


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