Conversation
0000000 to
9932ce7
Compare
|
Add a blank line before the |
src/rt/arrayint.d
Outdated
There was a problem hiding this comment.
Same fix would be necessary in rt/arraybyte.d, rt/arraydouble.d, rt/arrayfloat.d, rt/arrayreal.d, rt/arrayshort.d.
There was a problem hiding this comment.
Weird, I only got an error for arrayint. Will recheck.
There was a problem hiding this comment.
Oh, you just found a copy&paste bug in arrayint.d, it's the only one that performs a runtime check for sse2 support on X86_64.
#976
|
In windows platforms, To fix the issue, we should assume the bool dll_fixTLS( HINSTANCE hInstance, void* tlsstart, void* tlsend, void* tls_callbacks_a, int* tlsindex ) nothrow
{
[snip]
scope(failure) assert(0); // Add this line to tell to the compiler that the exception code path will never be reached.
if( !enumProcessThreads(
function (uint id, void* context) nothrow {
dll_aux.LdrpTlsListEntry* entry = cast(dll_aux.LdrpTlsListEntry*) context;
return dll_aux.addTlsData( getTEB( id ), entry.tlsstart, entry.tlsend, entry.tlsindex );
}, entry ) )
return false;
[snip]
} |
4e75e10 to
2a88d52
Compare
Just tried to fix it properly and got stuck in core.thread with the dreaded _d_monitorenter isn't nothrow issue, so I went with your |
|
Martin, file a bug to track fixing it more correctly and note the bug number in the source. |
|
src/core/sys/windows/dll.d
Outdated
There was a problem hiding this comment.
Please add the bugzilla number 13561 in the comment.
|
Others looks good to me. After the comment fix, I'll toggle on auto-merging. |
2a88d52 to
7db51f3
Compare
- revealed by enabling nothrow checks in functions with inline asm
7db51f3 to
9cf21d4
Compare
|
done |
|
Auto-merge toggled on |
with inline asm