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]
Other format: [Raw text]

[Bug c++/48749] [4.6/4.7 Regression] internal compiler error: tree check: expected field_decl


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48749

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P1
                 CC|                            |jakub at gcc dot gnu.org,
                   |                            |jason at gcc dot gnu.org
   Target Milestone|4.7.0                       |4.6.1
            Summary|[4.7 Regression] internal   |[4.6/4.7 Regression]
                   |compiler error: tree check: |internal compiler error:
                   |expected field_decl         |tree check: expected
                   |                            |field_decl

--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-05-04 08:54:07 UTC ---
Started with http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=171461
The patch has been backported to 4.6 branch as well and if built with
--enable-checking=yes, it ICEs there the same way.

In:
5880        case COMPONENT_REF:
5881          /* If this component is really a base class reference, then the
field
5882         itself isn't definitive.  */
5883          if (DECL_FIELD_IS_BASE (TREE_OPERAND (instance, 1)))
5884        return RECUR (TREE_OPERAND (instance, 0));
5885          return RECUR (TREE_OPERAND (instance, 1));

instance is a COMPONENT_REF with type Pos, TREE_OPERAND (instance, 0) is
INDIRECT_REF - *coords and TREE_OPERAND (instance, 1) is not FIELD_DECL, but
IDENTIFIER_NODE pos.


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