On Saturday, 29 April 2017 at 12:42:09 UTC, JamesD wrote:
Is there a known issue with DMD 2.074.0 importing *.di files?
(If no answer here, I will re-post in the DMD thread)
I've searched, but could not find this issue in the forums.
The following errors occur on both linux and windows when
building a simple hello world DWT gui app. The same code builds
on DMD 2.073.2 with no errors on both 32-bit and 64-bit linux
and windows.
Build error with DMD 2.074.0 importing *.di files:
https://pastebin.com/UgWNqZzh
It is beyond my technical ability to decipher what the core
issue is.
The same code builds with no errors when importing the
corresponding *.d files instead of the *.di files.
There are no errors building the DWT static libraries with DMD
2.074.0.
The errors occur when building a simple hello.d DWT gui app.
The obvious work-around is to import the *.d files instead of
the *.di files.
Building *.d files is a little slower, but almost negligible on
a fast PC.
However, there are minor issues with a few of the *.d files.
There are double semi-colons (;;) at the end of a few lines.
Here are the warnings building *.d files with dmd on linux:
https://pastebin.com/Zw7LjTh3
Perhaps I'll do a pull request to fix these minor errors?
Are the *.di generated automatically, or are they written by
hand? The compiler is known [0] to have problems with header
(*.di) generation, and IIRC there were some fixes recently [1]
that may have caused this problem. On the other hand there are no
known issues with importing *.di, since it works the same as as
improting plain *.d files (*.di is only a convention - you can
functions without bodies or vice versa in both).
Looking at https://pastebin.com/UgWNqZzh it seems that the
problem shouldn't be hard to solve, since it's only a syntax
error. I suggest examining and manually editing
../dwt/imp/org/eclipse/swt/accessibility/Accessible.di to narrow
down the problem.
I have no knowledge of DWT, so sorry if this is not very helpful.
[0]:
https://issues.dlang.org/buglist.cgi?bug_status=UNCONFIRMED&bug_status=NEW&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=VERIFIED&component=dmd&list_id=214662&product=D&query_format=advanced&resolution=---&short_desc=header%20generation&short_desc_type=anywordssubstr
[1]: http://dlang.org/changelog/2.074.0.html issue 15676