Only in src_patched: buildall.bat Only in src_patched\dmd: dmd.exe Only in src_patched\dmd: dmd.map diff -r src\dmd\declaration.c src_patched\dmd\declaration.c 596a597,598 > if(!aliassym && scope) > semantic(scope); diff -r src\dmd\expression.c src_patched\dmd\expression.c 645c645 < Expressions *arguments) --- > Expressions *arguments, FuncDeclaration* fd) 930a931,935 > > // if inferring return type, semantic3 needs to be run > if(!tf->next && fd->inferRetType) > fd->semantic3(fd->scope); > 2462a2468,2470 > // if inferring return type, sematic3 needs to be run > if(f->inferRetType && f->type && !f->type->nextOf()) > f->semantic3(f->scope); 3987c3995 < functionParameters(loc, sc, tf, arguments); --- > functionParameters(loc, sc, tf, arguments, f); 4012c4020 < functionParameters(loc, sc, tf, newargs); --- > functionParameters(loc, sc, tf, newargs, f); 4044c4052 < functionParameters(loc, sc, tf, arguments); --- > functionParameters(loc, sc, tf, arguments, f); 4068c4076 < functionParameters(loc, sc, tf, newargs); --- > functionParameters(loc, sc, tf, newargs, f); 6173a6182 > e1 = e1->semantic(sc); 7294c7303 < type = functionParameters(loc, sc, tf, arguments); --- > type = functionParameters(loc, sc, tf, arguments, f); 7552a7562 > type = type->semantic(e1->loc, sc); // BUG 1266 correct scope? Only in src_patched\dmd: id.c Only in src_patched\dmd: id.h Only in src_patched\dmd: idgen.exe Only in src_patched\dmd: idgen.map Only in src_patched\dmd: impcnvgen.exe Only in src_patched\dmd: impcnvgen.map diff -r src\dmd\mtype.c src_patched\dmd\mtype.c 4693,4696c4693,4696 < case LINKc: p = "C "; break; < case LINKwindows: p = "Windows "; break; < case LINKpascal: p = "Pascal "; break; < case LINKcpp: p = "C++ "; break; --- > case LINKc: p = " C"; break; > case LINKwindows: p = " Windows"; break; > case LINKpascal: p = " Pascal"; break; > case LINKcpp: p = " C++"; break; 5694a5695 > Only in src_patched\dmd: optabgen.exe Only in src_patched\dmd: optabgen.map diff -r src\dmd\toctype.c src_patched\dmd\toctype.c 383a384 > #if 0 385a387,389 > #else > const char *name = sym->toPrettyChars(); > #endif diff -r src\dmd\win32.mak src_patched\dmd\win32.mak 6a7,8 > DMC=\dm\bin\dmc > 12c14 < CC=\dm\bin\dmc --- > CC=$(DMC) 22c24 < MAKE=make -fwin32.mak C=$C TK=$(TK) ROOT=$(ROOT) --- > MAKE=make -fwin32.mak DMC=$(DMC) C=$C TK=$(TK) ROOT=$(ROOT) Only in src_patched\druntime: doc Only in src_patched\druntime: druntime.json Only in src\druntime\import\core: atomic.di Only in src\druntime\import\core: bitop.di Only in src\druntime\import\core: cpuid.di Only in src\druntime\import\core: dll_helper.di Only in src\druntime\import\core: exception.di Only in src\druntime\import\core: memory.di Only in src\druntime\import\core: runtime.di Only in src\druntime\import\core\stdc: complex.di Only in src\druntime\import\core\stdc: config.di Only in src\druntime\import\core\stdc: ctype.di Only in src\druntime\import\core\stdc: errno.di Only in src\druntime\import\core\stdc: fenv.di Only in src\druntime\import\core\stdc: float_.di Only in src\druntime\import\core\stdc: inttypes.di Only in src\druntime\import\core\stdc: limits.di Only in src\druntime\import\core\stdc: locale.di Only in src\druntime\import\core\stdc: math.di Only in src\druntime\import\core\stdc: signal.di Only in src\druntime\import\core\stdc: stdarg.di Only in src\druntime\import\core\stdc: stddef.di Only in src\druntime\import\core\stdc: stdint.di Only in src\druntime\import\core\stdc: stdio.di Only in src\druntime\import\core\stdc: stdlib.di Only in src\druntime\import\core\stdc: string.di Only in src\druntime\import\core\stdc: tgmath.di Only in src\druntime\import\core\stdc: time.di Only in src\druntime\import\core\stdc: wchar_.di Only in src\druntime\import\core\stdc: wctype.di Only in src\druntime\import\core\sync: barrier.di Only in src\druntime\import\core\sync: condition.di Only in src\druntime\import\core\sync: config.di Only in src\druntime\import\core\sync: exception.di Only in src\druntime\import\core\sync: mutex.di Only in src\druntime\import\core\sync: rwmutex.di Only in src\druntime\import\core\sync: semaphore.di Only in src\druntime\import\core\sys\osx\mach: kern_return.di Only in src\druntime\import\core\sys\osx\mach: port.di Only in src\druntime\import\core\sys\osx\mach: semaphore.di Only in src\druntime\import\core\sys\osx\mach: thread_act.di Only in src\druntime\import\core\sys\posix\arpa: inet.di Only in src\druntime\import\core\sys\posix: config.di Only in src\druntime\import\core\sys\posix: dirent.di Only in src\druntime\import\core\sys\posix: dlfcn.di Only in src\druntime\import\core\sys\posix: fcntl.di Only in src\druntime\import\core\sys\posix: inttypes.di Only in src\druntime\import\core\sys\posix\net: if_.di Only in src\druntime\import\core\sys\posix\netinet: in_.di Only in src\druntime\import\core\sys\posix\netinet: tcp.di Only in src\druntime\import\core\sys\posix: poll.di Only in src\druntime\import\core\sys\posix: pthread.di Only in src\druntime\import\core\sys\posix: pwd.di Only in src\druntime\import\core\sys\posix: sched.di Only in src\druntime\import\core\sys\posix: semaphore.di Only in src\druntime\import\core\sys\posix: setjmp.di Only in src\druntime\import\core\sys\posix: signal.di Only in src\druntime\import\core\sys\posix: stdio.di Only in src\druntime\import\core\sys\posix: stdlib.di Only in src\druntime\import\core\sys\posix\sys: ipc.di Only in src\druntime\import\core\sys\posix\sys: mman.di Only in src\druntime\import\core\sys\posix\sys: select.di Only in src\druntime\import\core\sys\posix\sys: shm.di Only in src\druntime\import\core\sys\posix\sys: socket.di Only in src\druntime\import\core\sys\posix\sys: stat.di Only in src\druntime\import\core\sys\posix\sys: time.di Only in src\druntime\import\core\sys\posix\sys: types.di Only in src\druntime\import\core\sys\posix\sys: uio.di Only in src\druntime\import\core\sys\posix\sys: wait.di Only in src\druntime\import\core\sys\posix: termios.di Only in src\druntime\import\core\sys\posix: time.di Only in src\druntime\import\core\sys\posix: ucontext.di Only in src\druntime\import\core\sys\posix: unistd.di Only in src\druntime\import\core\sys\posix: utime.di Only in src\druntime\import\core\sys\windows: windows.di Only in src\druntime\import\core: thread.di Only in src\druntime\import\core: thread_helper.di Only in src\druntime\import\core: vararg.di Only in src_patched\druntime: lib Only in src_patched\druntime: MINIT.OBJ diff -r src\druntime\src\core\dll_helper.d src_patched\druntime\src\core\dll_helper.d 349,350c349,355 < thread_attach( id ); < thread_moduleTlsCtor( id ); --- > int* index = cast(int*) context; > // if the OS has not prepared TLS for us, don't attach to the thread > if( GetTlsDataAddress( id, *index ) ) > { > thread_attach( id ); > thread_moduleTlsCtor( id ); > } 353c358 < }, null ); --- > }, tlsindex ); 382c387 < void dll_thread_attach( bool attach_thread = true, bool initTls = true ) --- > bool dll_thread_attach( bool attach_thread = true, bool initTls = true ) 383a389,391 > // if the OS has not prepared TLS for us, don't attach to the thread > if( !GetTlsDataAddress( GetCurrentThreadId(), _tls_index ) ) > return false; 387a396 > return false; 391c400 < void dll_thread_detach( bool detach_thread = true, bool exitTls = true ) --- > bool dll_thread_detach( bool detach_thread = true, bool exitTls = true ) 392a402,404 > // if the OS has not prepared TLS for us, don't attach to the thread > if( !GetTlsDataAddress( GetCurrentThreadId(), _tls_index ) ) > return false; 396a409 > return false; diff -r src\druntime\src\core\thread_helper.d src_patched\druntime\src\core\thread_helper.d 238c238,258 < --- > > // get the start of the TLS memory of the thread with the given handle > void* GetTlsDataAddress( HANDLE hnd, int tls_index ) > { > if( void** teb = getTEB( hnd ) ) > if( void** tlsarray = cast(void**) teb[11] ) > return tlsarray[tls_index]; > return null; > } > > // get the start of the TLS memory of the thread with the given identifier > void* GetTlsDataAddress( uint id, int tls_index ) > { > HANDLE hnd = OpenThread( thread_helper_aux.THREAD_QUERY_INFORMATION, FALSE, id ); > assert( hnd, "OpenThread failed" ); > > void* tls = GetTlsDataAddress( hnd, tls_index ); > CloseHandle( hnd ); > return tls; > } > diff -r src\druntime\src\rt\lifetime.d src_patched\druntime\src\rt\lifetime.d 101c101 < if (ci.m_flags & 1) // if COM object --- > if (0 & ci.m_flags & 1) // if COM object diff src\phobos\std\json.d src_patched\phobos\std\json.d 84c84,92 < while(isspace(peekChar())) next = 0; --- > while(isspace(peekChar())) > { > if(next == '\n') > { > line++; > pos = 1; > } > next = 0; > } 161c169 < str.put(toUTF8(buf, val)); --- > str.put(cast(string)toUTF8(buf, val)); diff src\phobos\std\xml.d src_patched\phobos\std\xml.d 948c948 < override bool isEmptyXML() { return false; } /// Returns false always --- > override bool isEmptyXML() { return items.length == 0; } /// Returns false always 1149c1149 < s ~= format(" %s=\"%s\"",key,decode(val,DecodeMode.LOOSE)); --- > s ~= format(" %s=\"%s\"",key,encode(val.dup)); // decode(val,DecodeMode.LOOSE)); 1658c1658 < check(xmlText_); --- > // check(xmlText_);