> | > | Are you saying that member variables must now be accessed with an > | > | explicit "this->" ? Or only those in base classes? Or only those in > | > | template classes? > | > > | > base classes. > | > | Templatized base classes though ? Or something. I'd love to see an > | explanation (and ... gosh ... even a rationale :) > > Go hunt in the gcc gnats database... there you will find both.
I asked on comp.lang.c++. The answer makes intuitive sense but seems to have engendered a rich stream of "Why? It works with my compiler." answers! Still the guy in question works for a company that make compilers so I guess that he 'just knows' ;-) Angus ----------------------------------------------------------------------- What base class is emergency_exit a member of in the following template definition? template <class T> class B : public T { public: void foo() { if (emergency_exit) ... } }; > And how would "this->" assist in telling the > compiler that it is from the base class (as opposed to the derived class)? It says that it's a member. Since it's not in B, it has to be in T. > Using "this->" is intended to aid readers of the code, not to resolve > compiler issues. What compiler requires this? > Every conforming one, which is to say very few currently. Pete Becker Dinkumware, Ltd.