Bug 18444 – [DIP25][DIP1000] Tracking issue for: "The implementation doesn't match DIPs 25/1000"

Status
RESOLVED
Resolution
INVALID
Severity
normal
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2018-02-15T09:56:43Z
Last change time
2018-03-22T21:42:02Z
Keywords
rejects-valid, safe, spec
Assigned to
No Owner
Creator
Carsten Blüggel
Blocks
18110

Comments

Comment #0 by chilli — 2018-02-15T09:56:43Z
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
Comment #1 by bugzilla — 2018-03-03T09:25:06Z
I've been going through and tagging the relevant issues with the keyword 'safe'.
Comment #2 by bugzilla — 2018-03-20T06:49:26Z
Is there any reason not to close this? The `safe` keyword does the job to connect these related issues.
Comment #3 by chilli — 2018-03-20T11:17:45Z
(In reply to Walter Bright from comment #2) > Is there any reason not to close this? The `safe` keyword does the job to > connect these related issues. Thank You so much for working hard on D and I'm especially delighted at Your recent work on my "favorite" subject, scope/dip1000/safe, finalizing that. I used this issue for pointing to "blocking -dip1000 compilable phobos" issues. If it's of no special value for You, then it's worth to be/remain RESOLVED. My vision is, phobos to be fully -dip1000 compilable before DConf2018 and Seb and others are great in going this same direction.
Comment #4 by bugzilla — 2018-03-21T08:48:36Z
(In reply to Carsten Blüggel from comment #3) > If it's of no special value for You, then it's worth to be/remain RESOLVED. > My vision is, phobos to be fully -dip1000 compilable before DConf2018 and > Seb and others are great in going this same direction. I agree with your agenda of making phobos fully -dip1000 by DConf. I'm glad you're focusing on that, enabling me to focus on making the compiler -dip1000 correct, as doing that gives a solid foundation for your goal.