This is the mail archive of the gcc-prs@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]

Re: c++/9558: subclass cannot find parent members without explicit"this->" in some cases


The following reply was made to PR c++/9558; it has been noted by GNATS.

From: Wolfgang Bangerth <bangerth@ticam.utexas.edu>
To: "Ryan C. Gordon" <ryan@epicgames.com>
Cc: gcc-bugs@gcc.gnu.org, <gcc-gnats@gcc.gnu.org>
Subject: Re: c++/9558: subclass cannot find parent members without explicit
 "this->" in some cases
Date: Mon, 3 Feb 2003 18:21:52 -0600 (CST)

 > If that's how C++ works in the official spec, it's not how it works in 
 > real life.
 
 I think we all understand this, but this is just so because compilers 
 previously didn't implement the standard correctly and did not _force_ you 
 to write compliant code. Mark et al dared to do so in the new parser.
 
 
 > I've got half a million lines of code in Unreal Tournament 2003 that 
 > this "feature" breaks, which compile fine on everything from CodeWarrior 
 > to Intel's compiler to Visual C to GCC 2.95.3, 3.1, and 3.2. I can list 
 > at least five other games I've worked on that this breaks. I do not 
 > control or write this code, I just port it.
 
 gcc 2.95 ... 3.2 accept it, but just because they don't implement the 
 standard.
 
 Intel icc accepts it, unless for example you switch on -Xc -ansi. If you 
 do so, then it won't accept your code either. AFAIK, the same holds for 
 HP's aCC.
 
 The situation might be worse than you think: if two-stage name lookup is 
 not implemented, then you might get wrong results sometimes. So you have 
 to decide whether you implement the standard or the old status quo.
 
 
 > Surely there's got to be some consideration for backwards compatibility, 
 > if not real world issues?
 
 I think the answer will be: if you want to use a newer compiler, fix your 
 code. I fixed my 250k lines of code, which was painful admittedly, but I 
 think it's necessary.
 
 W.
 
 -------------------------------------------------------------------------
 Wolfgang Bangerth             email:            bangerth@ticam.utexas.edu
                               www: http://www.ticam.utexas.edu/~bangerth/
 
 


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