This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Canonical types (1/3)
- From: Andrew Pinski <pinskia at physics dot uc dot edu>
- To: hubicka at ucw dot cz (Jan Hubicka)
- Cc: doug dot gregor at gmail dot com (Doug Gregor), hubicka at ucw dot cz (Jan Hubicka), richard dot guenther at gmail dot com (Richard Guenther), mark at codesourcery dot com (Mark Mitchell), gcc-patches at gcc dot gnu dot org (GCC Patches)
- Date: Wed, 3 Jan 2007 17:48:12 -0500 (EST)
- Subject: Re: [PATCH] Canonical types (1/3)
>
> > On 1/3/07, Jan Hubicka <hubicka@ucw.cz> wrote:
> > >I am looking into it. I think it is more likely IPA SSA from major
> > >part. Something weird is however going on when compiling Gerald's
> > >tramp3d:
> > > tramp3d-v4.cpp:55266: warning: canonical types differ for identical
> > > types Mesh<MeshTraits<3, T, MeshTag, SphericalTag, 3> > and >
> > > Mesh<MeshTraits<3, T,
> > >+MeshTag, SphericalTag, 3> >
> > > <bound_template_template_parm 0x2ba077eb06c0 Mesh type_0 type_6 VOID
> > > align 8 symtab 0 alias set -1 canonical type 0x2ba077eb06c0
> > > index 0 level 1 orig_level 2
> > > chain <type_decl 0x2ba078e8fb60 Mesh>>
> > > <bound_template_template_parm 0x2ba07810b3c0 Mesh type_0 type_6 VOID
> > > align 8 symtab 0 alias set -1 canonical type 0x2ba07810b3c0
> > > index 0 level 1 orig_level 2
> > > chain <type_decl 0x2ba078e8fb60 Mesh>>
> > >
> > >I would expect those to be ICE and not happening at all.
> >
> > That indicates a bug in the handling of canonical types. If you had
> > compiled with --disable-checking, it would probably ICE or fail to
> > compile tramp3d.
>
> Actually I would expect more ICEs with --enable-checking than wihtout.
In fact this really should have been an ICE instead of an warning.
Even if I add -w, I still get part of the warning out which is annoying.
> http://www.suse.de/~gcctest/c++bench/tramp3d/ for sources.
Also it is linked from http://gcc.gnu.org/benchmarks/ :)
http://www.suse.de/~rguenther/tramp3d/tramp3d-v4.cpp.gz
-- Pinski