digitalmars.D.bugs - [Issue 18444] New: [DIP25][DIP1000] Tracking issue for: "The
- d-bugmail puremagic.com (43/43) Feb 15 2018 https://issues.dlang.org/show_bug.cgi?id=18444
https://issues.dlang.org/show_bug.cgi?id=18444 Issue ID: 18444 Summary: [DIP25][DIP1000] Tracking issue for: "The implementation doesn't match DIPs 25/1000" Product: D Version: D2 Hardware: All OS: All Status: NEW Keywords: rejects-valid, safe, spec Severity: normal Priority: P1 Component: dmd Assignee: nobody puremagic.com Reporter: chilli posteo.net Depends on: 17512 Blocks: 18110 Tracking issue for: "The implementation doesn't match DIPs 25/1000". Existing and coming bugzilla issues will be lined up here (Depends on:). My initial add-priority is on issues as I encounter them as "blocking -dip1000 compilable phobos". (-dip1000 includes -dip25) Tracking down the kind of issues addressed here in the presence of inferred attributes/storage classes is somewhat tedious, as the compiler mostly comes up with the starting point only. E.g. temporarily explicitely declaring templated functions as safe (that should be inferred safe but aren't) helps to improve error message precision and so on down to the root of the failing safe inference, which may be a phobos or dmd implementation issue. Some uses of writef/writefln... are of this kind (inferred safe with -dip25, but inferred system with -dip1000 currently). Instrumenting with pragma(msg, typeof(&someFunction)); is another helper (does anybody know how to address struct auto-generated functions Constructor, Destructor, Postblit, Assignment Operator?; I failed with e.g. __dtor etc.). Any more hints/advice here is very much appreciated. https://github.com/dlang/DIPs/blob/master/DIPs/archive/DIP25.md https://github.com/dlang/DIPs/blob/master/DIPs/DIP1000.md Referenced Issues: https://issues.dlang.org/show_bug.cgi?id=17512 [Issue 17512] [REG 2.073] [DIP1000] Error on bad interplay of "auto ref" and "return" attribute deduction. https://issues.dlang.org/show_bug.cgi?id=18110 [Issue 18110] most of phobos should be safe-ly useable --
Feb 15 2018