Thread overview
Problem with dmd 2.068 Win 32
Aug 11, 2015
MGW
Aug 11, 2015
Adam D. Ruppe
Aug 11, 2015
Martin Nowak
Aug 11, 2015
Adam D. Ruppe
Aug 11, 2015
MGW
August 11, 2015
Hi!

My project has an error link:

Error 42: Symbol Undefined _D6object9Exception6__ctorMFNaNbNfAyaAyakC6object9ThrowableZC9Exception

On dmd 2.067.* everything gathered without mistakes. Where to look for a mistake?
August 11, 2015
On Tuesday, 11 August 2015 at 15:04:29 UTC, MGW wrote:
> Hi!
>
> My project has an error link:
>
> Error 42: Symbol Undefined _D6object9Exception6__ctorMFNaNbNfAyaAyakC6object9ThrowableZC9Exception
>
> On dmd 2.067.* everything gathered without mistakes. Where to look for a mistake?

See the changelog.
The compiler is now pickier if you forgot to link something explicitly.
August 11, 2015
On Tuesday, 11 August 2015 at 15:04:29 UTC, MGW wrote:
> Hi!
>
> My project has an error link:
>
> Error 42: Symbol Undefined _D6object9Exception6__ctorMFNaNbNfAyaAyakC6object9ThrowableZC9Exception
>
> On dmd 2.067.* everything gathered without mistakes. Where to look for a mistake?

Try ddemangle (part of the distribution).

ddemangle
_D6object9Exception6__ctorMFNaNbNfAyaAyakC6object9ThrowableZC9Exception

->

pure nothrow @safe Exception object.Exception.__ctor(immutable(char)[], immutable(char)[], uint, object.Throwable)

In the current release @nogc was added.
https://github.com/D-Programming-Language/druntime/blob/v2.068.0/src/object.d#L1614

You either have a wrong import paths (check which dmd.conf is used with 'dmd -v non_existent') or a stable object_.di file.
August 11, 2015
On Tuesday, 11 August 2015 at 15:10:57 UTC, Dominikus Dittes Scherkl wrote:
> See the changelog.
> The compiler is now pickier if you forgot to link something explicitly.

That shouldn't affect an Exception constructor through since they are part of the core druntime.


I suspect it has to do with the update leaving some old files behind... might help to clean out the old dir and reinstall the dmd.
August 11, 2015
On Tuesday, 11 August 2015 at 15:18:31 UTC, Martin Nowak wrote:
> You either have a wrong import paths (check which dmd.conf is used with 'dmd -v non_existent') or a stable object_.di file.

Or maybe a stale .obj or .lib file, referencing the old symbol.

Try a make clean too - delete any .obj and .lib files in your project directory and rebuild.
August 11, 2015
Thanks to all! The problem is localized!