public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* c++/10347: [3.4] tree check ICE in dependent_type_p
@ 2003-04-08 13:26 ebb9
  0 siblings, 0 replies; only message in thread
From: ebb9 @ 2003-04-08 13:26 UTC (permalink / raw)
  To: gcc-gnats


>Number:         10347
>Category:       c++
>Synopsis:       [3.4] tree check ICE in dependent_type_p
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          ice-on-legal-code
>Submitter-Id:   net
>Arrival-Date:   Tue Apr 08 13:26:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     Eric Blake
>Release:        3.4 20030317 (experimental)
>Organization:
>Environment:
System: CYGWIN_98-4.10 eblake 1.3.22(0.78/3/2) 2003-03-18 09:20 i686 unknown unknown Cygwin
host: i686-pc-cygwin
build: i686-pc-cygwin
target: i686-pc-cygwin
configured with: ../gcc/configure --enable-threads=posix --prefix=/home/eblake/gcc-3.4 --enable-shared --enable-languages=c,c++,java --enable-libgcj --with-gcc-version-trigger=/home/eblake/gcc/gcc/version.c --no-create --no-recursion
>Description:
I think the new parser is choking on this use of templates, distilled from the jikes compiler code.
>How-To-Repeat:
$ cat bug.cc
typedef unsigned int size_t;
void * __attribute__((__cdecl__)) memset (void *, int, size_t);

template <typename Key, typename Value>
struct Map
{
    struct Element
    {
        Element* next;
        Key* key;
        Value* value;
    };
    Element** base;
    unsigned hash_size;
    void Resize();
};

template<typename Key, typename Value>
void Map<Key, Value>::Resize()
{
    delete [] base;
    base = (Element**) memset(new Element*[hash_size], 0,
                              hash_size * sizeof(Element*));
}
$ g++ -c bug.cc
bug.cc: In member function `void Map<Key, Value>::Resize()':
bug.cc:23: internal compiler error: tree check: expected class 't', have 'x' (
   tree_list) in dependent_type_p, at cp/pt.c:11407
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://www.gnu.org/software/gcc/bugs.html> for instructions.
>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2003-04-08 13:26 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-04-08 13:26 c++/10347: [3.4] tree check ICE in dependent_type_p ebb9

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).