www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - "abstract" keyword

It seems that the compiler pretty much ignores the "abstract" keyword, 
and makes a method abstract if and only if there's no body, and a class 
abstract if and only if it has abstract methods (inherited or otherwise).

This is probably almost acceptable for methods, I'm not fussed on 
whether "abstract" is required or not, but if given then it should be an 
error for a method to have a body (different from current behaviour).

If abstract is given to a class, it should be abstract, and therefore 
instantiating it should be an error (different from current behaviour).
If a class is NOT marked as abstract, and has abstract methods 
(inherited or otherwise), this should be an error, and the error message 
should identify the unimplemented methods (different from current 
behaviour, which is to silently make the class abstract, and error when 
you try to instantiate it).

Sam
Jun 29 2004