base class access specifier[s]

Ellery Newcomer ellery-newcomer at utulsa.edu
Mon Jan 19 17:01:17 PST 2009


BCS wrote:
> Reply to Ellery,
> 
>> I don't buy that. Not that I'm a C guru or anything, but it looks to
>> me that Parser::BaseClasses could be easily edited to make the point
>> in question go away.
>>
> 
> it's not a parser thing but a grammar thing. It would be complex to 
> define a grammar that allows one each of the different types of prefixes 
> that are allowed:
> 
> int a = 5;
> auto b = 5;
> const c = 5;
> static d = 5;
> const static int e = 5;
> protected const static int f = 5;
> static const protected g = 5;
> 
> each of those is allow and reasonable in different contexts. To avoid 
> redundant grammars and inconsistencies they are generalized and also 
> shared with classes, structs, etc.
> 
> 

I don't buy that either. The subject was access specifiers for base 
classes, not storage classes for declarations or access specifiers for 
statements. In those cases I would grant your point, but a base class 
has precisely one access specifier and no storage classes. It would not 
be complex to define such a grammar and in fact the D grammar does 
precisely this.


More information about the Digitalmars-d-learn mailing list