c++/5123: tree check: expected identifier_node, have template_id_expr in build_component_ref, at cp/typeck.c:2133

wanderer@rsu.ru wanderer@rsu.ru
Fri Dec 14 23:14:00 GMT 2001


>Number:         5123
>Category:       c++
>Synopsis:       tree check: expected identifier_node, have template_id_expr in build_component_ref, at cp/typeck.c:2133
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          ice-on-illegal-code
>Submitter-Id:   net
>Arrival-Date:   Fri Dec 14 14:56:00 PST 2001
>Closed-Date:
>Last-Modified:
>Originator:     wanderer@rsu.ru
>Release:        gcc version 3.1 20011214 (experimental)
>Organization:
>Environment:
i386-unknown-freebsd4.4
>Description:
Current cvs gcc ICE at illegal code:

struct C {
 template<class T> T f() { return 0; }
};

int main() {
  C c;
  if(c.f<int>!=0) return 1 // ICE (missing "()")
  C* cp = &c;
  if(cp->f<int>!=0) return 1 // ICE also 
  return 0;
};

with message:

bug.cc: In function `int main()':
bug.cc:8: tree check: expected identifier_node, have template_id_expr in
   build_component_ref, at cp/typeck.c:2133

This bug related (maybe) to close but not fixed PR4987.

Vladimir Merzliakov
>How-To-Repeat:

>Fix:

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



More information about the Gcc-bugs mailing list