Thread overview
[Issue 17909] Inherited aliases produce unlinkable objects in final classes
Oct 17, 2017
Jonathan Wilbur
Oct 17, 2017
Jonathan Wilbur
Oct 17, 2017
Simen Kjaeraas
Jul 19, 2023
RazvanN
Jul 19, 2023
RazvanN
Sep 08, 2023
Basile-z
October 17, 2017
https://issues.dlang.org/show_bug.cgi?id=17909

Jonathan Wilbur <jonathan@wilbur.space> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |link-failure
           Priority|P1                          |P3

--
October 17, 2017
https://issues.dlang.org/show_bug.cgi?id=17909

Jonathan Wilbur <jonathan@wilbur.space> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jonathan@wilbur.space

--
October 17, 2017
https://issues.dlang.org/show_bug.cgi?id=17909

Simen Kjaeraas <simen.kjaras@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |simen.kjaras@gmail.com

--- Comment #1 from Simen Kjaeraas <simen.kjaras@gmail.com> ---
Same results on Win32 and Win64.

Child.boop.mangleof gives the same result as Parent.boop.mangleof, regardless of final keyword, and matches the missing symbol.

Interestingly, taking the address of (new Child()).boop and calling that works
fine:
    writeln((&(new Child()).boop)());

No, this is not expected behavior.

--
July 19, 2023
https://issues.dlang.org/show_bug.cgi?id=17909

RazvanN <razvan.nitu1305@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |razvan.nitu1305@gmail.com
           Severity|normal                      |regression

--- Comment #2 from RazvanN <razvan.nitu1305@gmail.com> ---
Regression introduced by: https://github.com/dlang/dmd/pull/4427

--
July 19, 2023
https://issues.dlang.org/show_bug.cgi?id=17909

--- Comment #3 from RazvanN <razvan.nitu1305@gmail.com> ---
Well, you are specifically trying to call a function that has no body, so I would argue that the linker error is correct behavior since you could potentially provide the implementation of Parent.beep in a different place. The fact that taking the address compiles is weird though.

--
September 08, 2023
https://issues.dlang.org/show_bug.cgi?id=17909

Basile-z <b2.temp@gmx.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |b2.temp@gmx.com
           Hardware|x86_64                      |All
                 OS|Mac OS X                    |All

--- Comment #4 from Basile-z <b2.temp@gmx.com> ---
One possible fix could be to re-resolve the function using the scope given by
`new Child()`

--
December 13
https://issues.dlang.org/show_bug.cgi?id=17909

--- Comment #5 from dlangBugzillaToGithub <robert.schadek@posteo.de> ---
THIS ISSUE HAS BEEN MOVED TO GITHUB

https://github.com/dlang/dmd/issues/17820

DO NOT COMMENT HERE ANYMORE, NOBODY WILL SEE IT, THIS ISSUE HAS BEEN MOVED TO GITHUB

--