Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 0 additions & 37 deletions changelog/2.072.0.dd
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@ $(BUGSTITLE Language Changes,

$(BUGSTITLE Compiler Changes,
$(LI $(RELATIVE_LINK2 iteration_closure, `opApply` now conservatively allocates a closure unless marked `scope`))
$(LI $(RELATIVE_LINK2 dash_safe, Add `-transition=safe` switch to enable additional `@safe` checks.))
$(LI $(RELATIVE_LINK2 native_tls_osx, Native TLS on OS X 64 bit.))
$(LI $(RELATIVE_LINK2 deferred_alias, Analysis for aliases in imported modules is deferred.))
$(LI $(RELATIVE_LINK2 __FILE_FULL_PATH__, Special keyword replaced by the source file's absolute file name.))
Expand Down Expand Up @@ -250,42 +249,6 @@ $(BUGSTITLE Language Changes,
)

$(BUGSTITLE Compiler Changes,
$(LI $(LNAME2 iteration_closure, `opApply` now conservatively allocates a closure unless marked `scope`)

$(P This breaking change was required to fix bug with `@safe` violation: $(BUGZILLA 16193).)

$(P To list all places where closure may be allocated after the change, use `-transition=safe`
compiler switch.)

$(P Example:)

---
struct S1 {
int opApply(int delegate(int) dg);
}

struct S2 {
int opApply(scope int delegate(int) dg);
}

void foo() {
foreach(i; S1.init) { // will allocate closure
}
foreach(i; S2.init) { // won't allocate closure
}
}
---
)

$(LI $(LNAME2 dash_safe, Add `-transition=safe` switch to enable additional `@safe` checks.)
$(P Enables enhanced `@safe` checking, which will break some existing code.)
$(UL
$(LI Prevents dereferencing `array.ptr` because that bypasses array bounds check.)
$(LI Assumes opApply delegate parameter escapes unless marked `scope`. Escaping
delegates often require a GC allocated closure.)
)
)

$(LI $(LNAME2 native_tls_osx, Native TLS on OS X 64 bit.)

$(P
Expand Down
41 changes: 41 additions & 0 deletions changelog/2.072.1_pre.dd
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
Ddoc

$(CHANGELOG_NAV_LAST 2.072.0)

$(VERSION Nov 29, 2016, =================================================,

$(BR)$(BIG List of all bug fixes and enhancements in D $(VER):)

$(BUGSTITLE DMD Compiler regressions,

$(LI $(BUGZILLA 16102): [REG2.070] struct dtor replace value on stack)
$(LI $(BUGZILLA 16574): [REG 2.072.0-b1] Unexplained errors about functions that overridde anything)
$(LI $(BUGZILLA 16678): [REG] Fix for issue 16193 creates major breakage)
$(LI $(BUGZILLA 16699): [REG 2.070] stack corruption with scope$(LPAREN)exit$(RPAREN))
)
$(BUGSTITLE DMD Compiler bugs,

$(LI $(BUGZILLA 16193): opApply$(LPAREN)$(RPAREN) doesn't heap allocate closure)
)
$(BUGSTITLE Phobos regressions,

$(LI $(BUGZILLA 16661): [REG2.072] std/format.d$(LPAREN)1070$(RPAREN): Incorrect format specifier: .2f for wstring and dstring)
$(LI $(BUGZILLA 16663): [REG 2.072] std.unit.toUpper rejects an alias this to a string)
$(LI $(BUGZILLA 16667): [REG] dub test fails on std.conv after upgrade to dmd 2.072.0)
$(LI $(BUGZILLA 16682): [REG 2.072] "privatization" of symbols in std.stdio breaks DFMT)
)
$(BUGSTITLE Phobos bugs,

$(LI $(BUGZILLA 16705): TaskPool.reduce fails to compile "cannot get frame pointer to D main")
)
$(BUGSTITLE Druntime bugs,

$(LI $(BUGZILLA 16651): atomicOp!"-="$(LPAREN)ulong, uint$(RPAREN) = wrong result/codegen)
)

)
$(CHANGELOG_NAV_LAST 2.072.0)

Macros:
VER=2.072.1
TITLE=Change Log: $(VER)
8 changes: 4 additions & 4 deletions download.dd
Original file line number Diff line number Diff line change
Expand Up @@ -167,10 +167,10 @@ Macros:

DMDV2=$(LATEST)

BETA=$(COMMENT $0)
_=BETA=$0
B_DMDV2=2.072.0
B_SUFFIX=b2
_=BETA=$(COMMENT $0)
BETA=$0
B_DMDV2=2.072.1
B_SUFFIX=b1

DEB32=$(DLSITE dmd_$(DMDV2)-0_i386.deb)
DEB64=$(DLSITE dmd_$(DMDV2)-0_amd64.deb)
Expand Down
6 changes: 4 additions & 2 deletions win32.mak
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ SRC= $(SPECSRC) 404.dd cpptod.dd ctod.dd pretod.dd cppcontracts.dd index.dd over
changelog\2.068.2.dd changelog\2.069.0.dd changelog\2.069.1.dd \
changelog\2.069.2.dd changelog\2.070.0.dd changelog\2.070.1.dd \
changelog\2.070.2.dd changelog\2.071.0.dd changelog\2.071.1.dd \
changelog\2.071.2.dd changelog\2.072.0.dd \
changelog\2.071.2.dd changelog\2.072.0.dd changelog\2.072.1_pre.dd \
changelog\index.dd \
glossary.dd acknowledgements.dd \
dcompiler.dd builtin.dd comparison.dd rationale.dd code_coverage.dd \
Expand Down Expand Up @@ -125,7 +125,7 @@ TARGETS= $(SPECTARGETS) cpptod.html ctod.html pretod.html cppcontracts.html 404.
changelog\2.069.0.html changelog\2.069.1.html changelog\2.069.2.html \
changelog\2.070.0.html changelog\2.070.1.html changelog\2.070.2.html \
changelog\2.071.0.html changelog\2.071.1.html changelog\2.071.2.html \
changelog\2.072.0.html \
changelog\2.072.0.html changelog\2.072.1.html \
changelog\index.html \
glossary.html acknowledgements.html builtin.html \
comparison.html rationale.html code_coverage.html \
Expand Down Expand Up @@ -350,6 +350,8 @@ changelog\2.071.2.html : $(CHANGELOG_DDOC) changelog\2.071.2.dd
$(DMD) -o- -c -D -Df$*.html $(CHANGELOG_DDOC) $*.dd
changelog\2.072.0.html : $(CHANGELOG_DDOC) changelog\2.072.0.dd
$(DMD) -o- -c -D -Df$*.html $(CHANGELOG_DDOC) $*.dd
changelog\2.072.1.html : $(CHANGELOG_PRE_DDOC) changelog\2.072.1_pre.dd
$(DMD) -o- -c -D -Df$*.html $(CHANGELOG_PRE_DDOC) $*.dd
changelog\index.html : $(CHANGELOG_DDOC) changelog\index.dd
$(DMD) -o- -c -D -Df$*.html $(CHANGELOG_DDOC) $*.dd

Expand Down