Boost logo

Boost :

From: Jason Hise (chaos_at_[hidden])
Date: 2005-09-25 20:07:52


Simon Buchan wrote:

>Jason Hise wrote:
>
>
>>Why does the following compile? The parameter type of A's pure virtual
>>function is private. How come B can see it, allowing it to override the
>>pure virtual function?
>>
>>class A
>>{
>>private:
>> struct S { };
>> virtual void bar ( S ) = 0;
>>};
>>
>>class B : public A
>>{
>>public:
>> virtual void bar ( A::S )
>> {
>> }
>>};
>>
>>int main ( )
>>{
>> B b;
>> return 0;
>>}
>>
>>
>Perhaps a question for comp.lang.c++. Remember to give the compiler,
>environment, and command-line you compiled it with. That said, it looks
>like a compiler bug (but I'm not up to date on the standard's wording).
>
>
Sorry, and never mind... I tested it on comeau and it failed to
compile. It looks like it is just a bug with VC8.

-Jason


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk