Thread overview
[Issue 20716] Wrong code/ABI for extern(C++) interface method that returns non-POD
Aug 29, 2020
Walter Bright
Sep 07, 2020
Walter Bright
Sep 07, 2020
Walter Bright
Sep 07, 2020
Dlang Bot
Nov 09, 2020
Dlang Bot
April 01, 2020
https://issues.dlang.org/show_bug.cgi?id=20716

Илья Ярошенко <ilyayaroshenko@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |C++, wrong-code

--- Comment #1 from Илья Ярошенко <ilyayaroshenko@gmail.com> ---
works well with LDC

--
August 29, 2020
https://issues.dlang.org/show_bug.cgi?id=20716

Walter Bright <bugzilla@digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |backend
                 CC|                            |bugzilla@digitalmars.com

--
September 07, 2020
https://issues.dlang.org/show_bug.cgi?id=20716

--- Comment #2 from Walter Bright <bugzilla@digitalmars.com> ---
Curiously, this works on Windows.

--
September 07, 2020
https://issues.dlang.org/show_bug.cgi?id=20716

--- Comment #3 from Walter Bright <bugzilla@digitalmars.com> ---
The problem here is the "adjustor thunk" generated does not take into account the size of the hidden pointer parameter, and winds up adjusting the hidden pointer rather than the `this` pointer.

--
September 07, 2020
https://issues.dlang.org/show_bug.cgi?id=20716

Dlang Bot <dlang-bot@dlang.rocks> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |pull

--- Comment #4 from Dlang Bot <dlang-bot@dlang.rocks> ---
@WalterBright created dlang/dmd pull request #11703 "fix Issue 20716 - Wrong code/ABI for extern(C++) interface method tha…" fixing this issue:

- fix Issue 20716 - Wrong code/ABI for extern(C++) interface method that
returns non-POD

https://github.com/dlang/dmd/pull/11703

--
November 09, 2020
https://issues.dlang.org/show_bug.cgi?id=20716

Dlang Bot <dlang-bot@dlang.rocks> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #5 from Dlang Bot <dlang-bot@dlang.rocks> ---
dlang/dmd pull request #11703 "fix Issue 20716 - Wrong code/ABI for extern(C++) interface method tha…" was merged into master:

- 9ad79f65edba40925c4f4d92c5603fb5711cd85a by Walter Bright:
  fix Issue 20716 - Wrong code/ABI for extern(C++) interface method that
returns non-POD

https://github.com/dlang/dmd/pull/11703

--