[Issue 3396] Call of abstract method not detected by semantic check

via Digitalmars-d-bugs digitalmars-d-bugs at puremagic.com
Mon Aug 11 08:05:45 PDT 2014


https://issues.dlang.org/show_bug.cgi?id=3396

--- Comment #8 from yebblies <yebblies at gmail.com> ---
(In reply to Denis Shelomovskij from comment #7)
> (In reply to yebblies from comment #6)
> > This code:
> > 
> > abstract class A
> > {
> >    abstract void M();
> > }
> > 
> > could mean one of two things:
> > 1. M is a pure virtual function
> > 2. M provides 'base class functionality', but this is a di file so the body
> > isn't present.
> 
> You misuse terminology. "pure virtual function" is a C++ term which means
> "this function should be overriden to be able to instantiate class". There
> is no term for function that doesn't provide base class functionality. So
> D's 'abstract' means exactly what C++'s '=0' postfix does marking function
> "pure virtual" in contrast to e.g. C#'s 'abstract'.

I figured people would understand what I meant.  1) is a function that has no
implementation.

--


More information about the Digitalmars-d-bugs mailing list