Thread overview
Assert failure on 2.070.0 without stack trace
Jan 28, 2016
Nordlöw
Jan 28, 2016
Vladimir Panteleev
Jan 28, 2016
Nordlöw
Jan 28, 2016
Nordlöw
Jan 29, 2016
Benjamin Thaut
January 28, 2016
After upgrading to 2.070.0 I get an assert failure in my application that wasn't there before:

core.exception.AssertError@knet/linking.d(235): Assertion failure

Why isn't there any stacktrace? I thought has been fixed.

Please help.
January 28, 2016
On Thursday, 28 January 2016 at 18:01:09 UTC, Nordlöw wrote:
> After upgrading to 2.070.0 I get an assert failure in my application that wasn't there before:
>
> core.exception.AssertError@knet/linking.d(235): Assertion failure
>
> Why isn't there any stacktrace? I thought has been fixed.
>
> Please help.

You can use Digger to find the exact compiler change that caused this assert to manifest, and Dustmite to find the minimal program which behaves differently in two compiler versions.

January 28, 2016
On Thursday, 28 January 2016 at 18:13:59 UTC, Vladimir Panteleev wrote:
> On Thursday, 28 January 2016 at 18:01:09 UTC, Nordlöw wrote:
>> After upgrading to 2.070.0 I get an assert failure in my application that wasn't there before:
>>
>> core.exception.AssertError@knet/linking.d(235): Assertion failure
>>
>> Why isn't there any stacktrace? I thought has been fixed.
>>
>> Please help.
>
> You can use Digger to find the exact compiler change that caused this assert to manifest, and Dustmite to find the minimal program which behaves differently in two compiler versions.

My "app" is ca 30klines...
January 28, 2016
On Thursday, 28 January 2016 at 18:13:59 UTC, Vladimir Panteleev wrote:
> You can use Digger to find the exact compiler change that caused this assert to manifest, and Dustmite to find the minimal program which behaves differently in two compiler versions.

Thanks, I'm aware of these tools.

But it's easier to use the stacktrace...if I only get one. The function where the assert() is called is, in turn, called in hundreds of places.
January 29, 2016
On Thursday, 28 January 2016 at 18:33:19 UTC, Nordlöw wrote:
>
> Thanks, I'm aware of these tools.
>
> But it's easier to use the stacktrace...if I only get one. The function where the assert() is called is, in turn, called in hundreds of places.

Which platform are you on? Are all your binaries compiled with debug symbols? If one or multiple functions on the stack are within phobos or druntime you might not have debug symbols for phobos or druntime. Using inline asm might also destroy your stack frames.