March 08, 2016 [D-runtime] [D-Programming-Language/druntime] 2db514: fix infinite loop in (cast()super).toString | ||||
---|---|---|---|---|
| ||||
Attachments:
| Branch: refs/heads/master Home: https://github.com/D-Programming-Language/druntime Commit: 2db5144a57557338f5c57320c4cb34deecfb7ad0 https://github.com/D-Programming-Language/druntime/commit/2db5144a57557338f5c57320c4cb34deecfb7ad0 Author: Martin Nowak <code@dawg.eu> Date: 2016-03-04 (Fri, 04 Mar 2016) Changed paths: M src/core/exception.d Log Message: ----------- fix infinite loop in (cast()super).toString - the compiler doesn't recognize this as super call and will use dynamic dispatch leading to an infinite loop Commit: 38f6434ddbd9a5c2af0fe9cb93ea0da18b0d4e57 https://github.com/D-Programming-Language/druntime/commit/38f6434ddbd9a5c2af0fe9cb93ea0da18b0d4e57 Author: Martin Nowak <code@dawg.eu> Date: 2016-03-04 (Fri, 04 Mar 2016) Changed paths: M mak/COPY M mak/SRCS A src/core/internal/spinlock.d M src/core/thread.d M src/gc/gc.d M win32.mak M win64.mak Log Message: ----------- spinlock for GC - less overhead than pthread_mutex - uses test and test-and-set algorithm with configurable backoff Commit: f388297281f5cb839a11c2d8a482d644cfcd6c3a https://github.com/D-Programming-Language/druntime/commit/f388297281f5cb839a11c2d8a482d644cfcd6c3a Author: Martin Nowak <code@dawg.eu> Date: 2016-03-04 (Fri, 04 Mar 2016) Changed paths: M src/gc/gc.d Log Message: ----------- avoid any GC deadlocks - always use runLocked which now unlocks on error - check for recursive GC entrance during finalization inFinalizer can be thread local b/c we're finalizing in the same thread that currently holds the lock Commit: 3a43adb9497fdf19ccab27440a30f7c27b307b24 https://github.com/D-Programming-Language/druntime/commit/3a43adb9497fdf19ccab27440a30f7c27b307b24 Author: Martin Nowak <code@dawg.eu> Date: 2016-03-04 (Fri, 04 Mar 2016) Changed paths: M src/core/memory.d M src/core/runtime.d M src/gc/proxy.d M src/gcstub/gc.d Log Message: ----------- workaround recursive GC calls for traces created in finalizers - all trace handlers should be @nogc but that's currently out of scope b/c it requires to rewrite all backtrace and demangle code Commit: 51576e7d4d02643152df90de0ae7bc61b1087680 https://github.com/D-Programming-Language/druntime/commit/51576e7d4d02643152df90de0ae7bc61b1087680 Author: Andrei Alexandrescu <andrei@erdani.com> Date: 2016-03-08 (Tue, 08 Mar 2016) Changed paths: M mak/COPY M mak/SRCS M src/core/exception.d A src/core/internal/spinlock.d M src/core/memory.d M src/core/runtime.d M src/core/thread.d M src/gc/gc.d M src/gc/proxy.d M src/gcstub/gc.d M win32.mak M win64.mak Log Message: ----------- Merge pull request #1447 from MartinNowak/spinLock spinlock for GC Compare: https://github.com/D-Programming-Language/druntime/compare/c1db2d5636af...51576e7d4d02 |
Copyright © 1999-2021 by the D Language Foundation