# HG changeset patch # User Christian Kamm # Date 1223054686 -7200 # Node ID 2a0bcf7f7b3d214a31cebcddb6dd99ae0bceeec0 # Parent 307ae566885fbbd97d25b38899139716193841d8 Fix -oq, closes #96 Add value debug output to RealExp::toConstElem. diff -r 307ae566885f -r 2a0bcf7f7b3d dmd/module.c --- a/dmd/module.c Fri Oct 03 17:31:16 2008 +0200 +++ b/dmd/module.c Fri Oct 03 19:24:46 2008 +0200 @@ -141,16 +141,22 @@ argobj = FileName::name((char*)this->arg); if (global.params.fqnNames) + { if(md) argobj = FileName::replaceName(argobj, md->toChars()); else argobj = FileName::replaceName(argobj, toChars()); - int clen = strlen(argobj); - char* tmp = (char *)alloca(clen + 1); - memcpy(tmp, argobj, clen); - tmp[clen] = 0; - argobj = tmp; + // add ext, otherwise forceExt will make nested.module into nested.bc + size_t len = strlen(argobj); + size_t extlen = strlen(ext); + char* s = (char *)alloca(len + 1 + extlen + 1); + memcpy(s, argobj, len); + s[len] = '.'; + memcpy(s + len + 1, ext, extlen + 1); + s[len+1+extlen] = 0; + argobj = s; + } } if (!FileName::absolute(argobj)) diff -r 307ae566885f -r 2a0bcf7f7b3d gen/toir.cpp --- a/gen/toir.cpp Fri Oct 03 17:31:16 2008 +0200 +++ b/gen/toir.cpp Fri Oct 03 19:24:46 2008 +0200 @@ -244,7 +244,7 @@ LLConstant* RealExp::toConstElem(IRState* p) { - Logger::print("RealExp::toConstElem: %s | %s\n", toChars(), type->toChars()); + Logger::print("RealExp::toConstElem: %s | %s | %LX\n", toChars(), type->toChars(), value); LOG_SCOPE; Type* t = type->toBasetype(); return DtoConstFP(t, value);