[dmd-internals] Module.semantic is not virtual
Daniel Murphy via dmd-internals
dmd-internals at puremagic.com
Sat Jul 30 21:18:22 PDT 2016
They're just separate functions that happen to use the same name.
They're never going to be called through a reference typed as Dsymbol
On Sun, Jul 31, 2016 at 4:26 AM, Johan Engelen via dmd-internals
<dmd-internals at puremagic.com> wrote:
> No-one knows?
> On Wed, Jul 27, 2016 at 8:50 PM, Johan Engelen <jbc.engelen at gmail.com>
>> Hi all,
>> Class Module contains the member functions semantic(), semantic2, and
>> semantic3() that are not virtual. They have the same name however as the
>> Dsymbol virtual methods. Because Module inherits from Dsymbol, it is
>> confusing to reuse the names. Clang warns about Module's functions hiding
>> the virtual methods of the parent class.
>> What was the intent here? Should Module's semantic functions override the
>> base class's functions (but then why the *final* Package::semantic()?), or
>> should they be separate function and just be renamed to something more
> dmd-internals mailing list
> dmd-internals at puremagic.com
More information about the dmd-internals