| Thread overview | ||||||
|---|---|---|---|---|---|---|
|
January 10, 2016 flag -ignore_nogc to allow breaking nogc rules during debugging [analog to debug for pure] | ||||
|---|---|---|---|---|
| ||||
Attachments:
| this would make error handling trivial and solve issues such as this: FORUM:formatted assert error messages inside nogc functions http://forum.dlang.org/thread/CANri+EyNyrhMWGCSqZHx_vXDJFSrwhOrV=J2kaTZ6t9-upTAtg@mail.gmail.com usage: during development: dmd -debug -ignore_nogc other_flags foo.d during release: dmd other_flags foo.d @nogc void test(int a){ version(ignore_nogc) assert(a==1, text("a = ", a)); else assert(a==1, "a = ?"); } | |||
January 10, 2016 Re: flag -ignore_nogc to allow breaking nogc rules during debugging [analog to debug for pure] | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Timothee Cour | On Sunday, 10 January 2016 at 09:17:20 UTC, Timothee Cour wrote:
> this would make error handling trivial and solve issues such as this:
>
> FORUM:formatted assert error messages inside nogc functions http://forum.dlang.org/thread/CANri+EyNyrhMWGCSqZHx_vXDJFSrwhOrV=J2kaTZ6t9-upTAtg@mail.gmail.com
>
> usage:
>
> during development:
> dmd -debug -ignore_nogc other_flags foo.d
> during release:
> dmd other_flags foo.d
>
> @nogc
> void test(int a){
>
> version(ignore_nogc)
> assert(a==1, text("a = ", a));
> else
> assert(a==1, "a = ?");
>
> }
is there a valid reason that debug shouldn't just ignore @nogc?
this is also an issue with contracts iirc
| |||
January 10, 2016 Re: flag -ignore_nogc to allow breaking nogc rules during debugging [analog to debug for pure] | ||||
|---|---|---|---|---|
| ||||
Posted in reply to rsw0x Attachments:
| just more fine-grained control ... but either way.
having an escape away from nogc would be needed.
On Sun, Jan 10, 2016 at 1:56 AM, rsw0x via Digitalmars-d < digitalmars-d@puremagic.com> wrote:
> On Sunday, 10 January 2016 at 09:17:20 UTC, Timothee Cour wrote:
>
>> this would make error handling trivial and solve issues such as this:
>>
>> FORUM:formatted assert error messages inside nogc functions http://forum.dlang.org/thread/CANri+EyNyrhMWGCSqZHx_vXDJFSrwhOrV=J2kaTZ6t9-upTAtg@mail.gmail.com
>>
>> usage:
>>
>> during development:
>> dmd -debug -ignore_nogc other_flags foo.d
>> during release:
>> dmd other_flags foo.d
>>
>> @nogc
>> void test(int a){
>>
>> version(ignore_nogc)
>> assert(a==1, text("a = ", a));
>> else
>> assert(a==1, "a = ?");
>>
>> }
>>
>
> is there a valid reason that debug shouldn't just ignore @nogc? this is also an issue with contracts iirc
>
| |||
January 10, 2016 Re: flag -ignore_nogc to allow breaking nogc rules during debugging [analog to debug for pure] | ||||
|---|---|---|---|---|
| ||||
Posted in reply to Timothee Cour | On Sunday, 10 January 2016 at 12:33:19 UTC, Timothee Cour wrote: > just more fine-grained control ... but either way. > having an escape away from nogc would be needed. > Is it a bit annoying to use, but have you aware of: http://p0nce.github.io/d-idioms/#Bypassing-@nogc ? | |||
Copyright © 1999-2021 by the D Language Foundation
Permalink
Reply