Thread overview
[Issue 24340] Invalid export directives generated
Jan 15, 2024
Richard Cattermole
Jan 15, 2024
Richard Cattermole
Jan 15, 2024
Dlang Bot
Jan 15, 2024
Dlang Bot
Jan 17, 2024
RazvanN
January 15, 2024
https://issues.dlang.org/show_bug.cgi?id=24340

Richard Cattermole <alphaglosined@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |dll

--
January 15, 2024
https://issues.dlang.org/show_bug.cgi?id=24340

--- Comment #1 from Richard Cattermole <alphaglosined@gmail.com> ---
I have been able to identify the exports that are not showing up.

```
_D6object__T10RTInfoImplVAmA81i40880i1808504320951916831i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i1808504320951916825i7234017283807670553i7234017283807667300i7234017283807667300i7234017283807667300i7234017283807667300i7234017283807667300i7234017283807667300i1236282250650724ZQCKkyG81m
```

```
_D6object__T10RTInfoImplVAmA77i38480i5063812098665367111i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i70ZQCGuyG77m
```

```
_D6object__T10RTInfoImplVAmA74i36944i5063812098665367111i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i5063812098665367110i70ZQCEmyG74m
```

I modified MsCoffObj_export_symbol to print destr in the region of exports (by
a simple counter since its all ordered) and used exports surrounding to
confirm.
https://github.com/dlang/dmd/blob/6da8f7266ca1cafbc1050413457a9eee015d5f05/compiler/src/dmd/backend/mscoffobj.d#L1746

Printing the lengths (strlen) of destr and and dest.ptr lead to the outputs:

6 instead of 1643
6 instead of 1549
6 instead of 1489

The problem appears to be the stack buffer for using DEST_LEN which has the
order of 900 values as per
https://github.com/dlang/dmd/blob/6da8f7266ca1cafbc1050413457a9eee015d5f05/compiler/src/dmd/backend/cc.d#L83

Fix incoming.

--
January 15, 2024
https://issues.dlang.org/show_bug.cgi?id=24340

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

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

--- Comment #2 from Dlang Bot <dlang-bot@dlang.rocks> ---
@rikkimax created dlang/dmd pull request #16047 "Fix issue 24340 - Invalid export directives generated" fixing this issue:

- Fix issue 24340 - Invalid export directives generated

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

--
January 15, 2024
https://issues.dlang.org/show_bug.cgi?id=24340

--- Comment #3 from Dlang Bot <dlang-bot@dlang.rocks> ---
@rikkimax updated dlang/dmd pull request #16047 "Fix issue 24340 - Invalid export directives generated" fixing this issue:

- Fix issue 24340 - Invalid export directives generated

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

--
January 17, 2024
https://issues.dlang.org/show_bug.cgi?id=24340

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |razvan.nitu1305@gmail.com
         Resolution|---                         |FIXED

--