------- Additional Comments From gdr at integrable-solutions dot net 2005-07-14 21:17 ------- Subject: Re: [4.1 regression] ICE expected tree that contains 'decl with visibility' structure, have 'const_decl' in decl_linkage, at cp/tree.c:2132
"dberlin at dberlin dot org" <[EMAIL PROTECTED]> writes: | ------- Additional Comments From dberlin at gcc dot gnu dot org 2005-07-14 20:40 ------- | Subject: Re: [4.1 regression] ICE expected tree that | contains 'decl with visibility' structure, have 'const_decl' in | decl_linkage, at cp/tree.c:2132 | | | > | | > | I really don't have the skills to play language lawyer here, my | > | > I'm not here to play language lawyer neither; but the claim just looks | > wrong to me. Unless you define playing language lawyer as giving | > asnwer you questions you raised. | Playing language lawyer is sitting here quoting the standard at me | instead of demonstrating a testcase where the old answer is wrong. The comment in front of DECL_EXTERNAL_LINKAGE_P says this: /* Returns nonzero if DECL has external linkage, as specified by the language standard. (This predicate may hold even when the corresponding entity is not actually given external linkage in the object file; see decl_linkage for details.) */ #define DECL_EXTERNAL_LINKAGE_P(DECL) \ (decl_linkage (DECL) == lk_external) So, if you find a testcase where decl_linkage() returns lk_internal insteand of lk_external, then you have found a bug in the compiler. The fix is not to copy-and-paste that error. Language lawyering notwithstanding. -- Gaby -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22452