[Issue 20111] asm VCVTPS2PH is not encoded correctly
https://issues.dlang.org/show_bug.cgi?id=20111 thomas.bock...@gmail.com changed: What|Removed |Added Keywords||iasm --
[Issue 21198] Inout copy constructor on union field does not prevent copy-initialization of union
https://issues.dlang.org/show_bug.cgi?id=21198 Dlang Bot changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #2 from Dlang Bot --- dlang/dmd pull request #11634 "Fix issue 21198 - Inout copy constructor on union field does not prev…" was merged into stable: - 573bf6a171f5dd23caebda7bb2ca66455c3d6d0f by Paul Backus: Fix issue 21198 - Inout copy constructor on union field does not prevent copy-initialization of union Previously, generated copy constructors of unions were disabled only if they failed to type-check. They are now disabled in all cases, as required by the language spec. https://github.com/dlang/dmd/pull/11634 --
[Issue 18826] [inline asm] Wrongcode for mov
https://issues.dlang.org/show_bug.cgi?id=18826 Basile-z changed: What|Removed |Added Keywords||iasm CC||b2.t...@gmx.com --
[Issue 21120] Inconsistent mangling of __init symbol
https://issues.dlang.org/show_bug.cgi?id=21120 Dlang Bot changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #2 from Dlang Bot --- dlang/dmd pull request #11645 "Fix Issue 21120 - Inconsistent mangling of __init symbol" was merged into stable: - 4e863aa3532480abe5832b2448904bdf8e441ddf by Martin Kinkelin: Fix Issue 21120 - Inconsistent mangling of __init symbol The mangling code previously assumed no identifier would ever start at buffer offset 0. Get rid of that assumption by storing offset+1. https://github.com/dlang/dmd/pull/11645 --
[Issue 21120] Inconsistent mangling of __init symbol
https://issues.dlang.org/show_bug.cgi?id=21120 Dlang Bot changed: What|Removed |Added Keywords||pull --- Comment #1 from Dlang Bot --- @kinke created dlang/dmd pull request #11645 "Fix Issue 21120 - Inconsistent mangling of __init symbol" fixing this issue: - Fix Issue 21120 - Inconsistent mangling of __init symbol The mangling code previously assumed no identifier would ever start at buffer offset 0. Get rid of that assumption by storing offset+1. https://github.com/dlang/dmd/pull/11645 --
[Issue 21209] scope attribute inference with does not work well with foreach
https://issues.dlang.org/show_bug.cgi?id=21209 Chloé changed: What|Removed |Added Keywords||rejects-valid, safe Severity|enhancement |normal --
[Issue 21209] New: scope attribute inference with does not work well with foreach
https://issues.dlang.org/show_bug.cgi?id=21209 Issue ID: 21209 Summary: scope attribute inference with does not work well with foreach Product: D Version: D2 Hardware: x86_64 OS: Linux Status: NEW Severity: enhancement Priority: P1 Component: dmd Assignee: nob...@puremagic.com Reporter: rightfold+bugzilla+dl...@gmail.com The following program does not compile: --- $ cat main.d void foo()(const(char)[] cs) { foreach (c; cs) bar(c); } @safe void bar(char c) { } @safe void main() { char[10] cs; foo(cs); // line 16 } $ dmd -dip1000 main.d main.d(16): Error: reference to local variable `cs` assigned to non-scope parameter `cs` calling example.foo!().foo --- By manually adding the scope attribute to the cs parameter, the program compiles. But it is expected that DMD infers this from the body of the foo function, as it is a template. Verified with DMD 2.092.0 and LDC 1.23.0. --
[Issue 3179] [PATCH] Improvement of Inline Assembly D 2.0 specification
https://issues.dlang.org/show_bug.cgi?id=3179 Basile-z changed: What|Removed |Added Keywords||iasm CC||b2.t...@gmx.com --
[Issue 20207] (inline asm) DMD (x64) assembles code that contains both REX and high byte of a general purpouse register
https://issues.dlang.org/show_bug.cgi?id=20207 Basile-z changed: What|Removed |Added Keywords||iasm CC||b2.t...@gmx.com --
[Issue 16045] Unable to loading global variables in inline assembly with -fPIC
https://issues.dlang.org/show_bug.cgi?id=16045 Basile-z changed: What|Removed |Added Keywords||iasm CC||b2.t...@gmx.com --
[Issue 16274] The curses of debugging: short argument passed in 16-bit register, against ABI
https://issues.dlang.org/show_bug.cgi?id=16274 --- Comment #4 from Walter Bright --- Curiously, I implemented init_pair() and it turns out that gcc sign extends each parameter before using it. So this problem does depend on what's going on with init_pair's implementation. --
[Issue 16274] The curses of debugging: short argument passed in 16-bit register, against ABI
https://issues.dlang.org/show_bug.cgi?id=16274 --- Comment #3 from Walter Bright --- gcc, however, does indeed set the upper 16 bits to zero. I suppose dmd should behave the same way, regardless of the spec. --
[Issue 16274] The curses of debugging: short argument passed in 16-bit register, against ABI
https://issues.dlang.org/show_bug.cgi?id=16274 --- Comment #2 from Walter Bright --- A smaller version: extern(C) int init_pair(short pair, short f, short b); void test() { init_pair(1, 2, 3); } which generates: _D4testQfFZv: pushRBP mov RBP,RSP mov 8D,3 mov DX,2 mov CX,1 sub RSP,020h callinit_pair add RSP,020h pop RBP ret Indeed, you are correct in that the upper 16 bits of the register is not set. But I believe this correct code generation. The problem may be in the implementation of init_pair(), which is assuming the upper 16 bits are zero. --
[Issue 12635] Accepts Invalid Segment Prefix on Branch Instruction
https://issues.dlang.org/show_bug.cgi?id=12635 Rainer Schuetze changed: What|Removed |Added CC||r.sagita...@gmx.de --- Comment #2 from Rainer Schuetze --- I suspect this refers to PR 3483 and this change: https://github.com/dlang/dmd/pull/3483/files#diff-751ccd146d8d1ff90869fb80fee8ac58R1392 --
[Issue 21047] Linker error: GOT load reloc does not point to a movq instruction
https://issues.dlang.org/show_bug.cgi?id=21047 Walter Bright changed: What|Removed |Added Keywords||backend --
[Issue 20688] Wrong code when linking to C complex number functions
https://issues.dlang.org/show_bug.cgi?id=20688 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 20803] [REG2.071.0] Objects are destroyed too early with -inline
https://issues.dlang.org/show_bug.cgi?id=20803 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 20716] Wrong code/ABI for extern(C++) interface method that returns non-POD
https://issues.dlang.org/show_bug.cgi?id=20716 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 20154] bad closure if local variables have larger alignment requirements
https://issues.dlang.org/show_bug.cgi?id=20154 Walter Bright changed: What|Removed |Added Keywords||backend --
[Issue 19846] Identity function causes code returning byte[0] to not be executed
https://issues.dlang.org/show_bug.cgi?id=19846 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 19841] Wrong ABI for C++ functions taking a struct by value
https://issues.dlang.org/show_bug.cgi?id=19841 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 19662] x86_64: Different code output when compiling with inline/boundscheck on/off
https://issues.dlang.org/show_bug.cgi?id=19662 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 19384] [Codegen] Address of stack temporary is returned
https://issues.dlang.org/show_bug.cgi?id=19384 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 19179] extern(C++) small-struct by-val uses wrong ABI
https://issues.dlang.org/show_bug.cgi?id=19179 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 18826] [inline asm] Wrongcode for mov
https://issues.dlang.org/show_bug.cgi?id=18826 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 18412] [REG2.077.0] immutable array in library becomes null when referenced in static constructor
https://issues.dlang.org/show_bug.cgi?id=18412 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 17965] Unexplained usage of the FPU while function result already in right XMM registers
https://issues.dlang.org/show_bug.cgi?id=17965 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 17436] Weird `cast(double) i != cast(double) i` on 32-bit hosts
https://issues.dlang.org/show_bug.cgi?id=17436 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 16317] Wrong binop evaluation/load order when optimizing
https://issues.dlang.org/show_bug.cgi?id=16317 Walter Bright changed: What|Removed |Added Keywords||backend --
[Issue 16274] The curses of debugging: short argument passed in 16-bit register, against ABI
https://issues.dlang.org/show_bug.cgi?id=16274 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 16268] Wrong optimization in code with integer overflow
https://issues.dlang.org/show_bug.cgi?id=16268 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 15921] Win64: wrong codegen with array of structs slicing
https://issues.dlang.org/show_bug.cgi?id=15921 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 14896] x64 synchronized problem when using -O
https://issues.dlang.org/show_bug.cgi?id=14896 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 14708] destructor for temporary not called during stack unwinding
https://issues.dlang.org/show_bug.cgi?id=14708 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 14692] SIGSEGV during SHA.put
https://issues.dlang.org/show_bug.cgi?id=14692 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 14203] Return of floating point values from extern(C++) member functions does not match dmc
https://issues.dlang.org/show_bug.cgi?id=14203 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 13957] 64 bit C ABI not followed for passing structs with floating+integer types
https://issues.dlang.org/show_bug.cgi?id=13957 Walter Bright changed: What|Removed |Added Keywords||backend --
[Issue 13769] Wrong argument passing for variadic functions in 64 bits
https://issues.dlang.org/show_bug.cgi?id=13769 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 13548] wrong sqrt
https://issues.dlang.org/show_bug.cgi?id=13548 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 12878] inline asm memory operand always uses 64-bit addressing
https://issues.dlang.org/show_bug.cgi?id=12878 Walter Bright changed: What|Removed |Added Keywords||backend --
[Issue 12635] Accepts Invalid Segment Prefix on Branch Instruction
https://issues.dlang.org/show_bug.cgi?id=12635 Walter Bright changed: What|Removed |Added Keywords||backend --
[Issue 12361] Coverage doesn't work on the functions mixin-ed from another module
https://issues.dlang.org/show_bug.cgi?id=12361 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 11646] [snn] `malloc` is unstable for large allocations
https://issues.dlang.org/show_bug.cgi?id=11646 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 11435] -O optimization flag causes invalid 32 bit codegen
https://issues.dlang.org/show_bug.cgi?id=11435 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 11106] Chaos on struct with multidimentional static array initialization from its element
https://issues.dlang.org/show_bug.cgi?id=11106 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 11049] array bounds error uses module file name rather than file name modified by #line directive
https://issues.dlang.org/show_bug.cgi?id=11049 Walter Bright changed: What|Removed |Added Keywords||backend --
[Issue 10123] Can't subtract positive number from length of array of struct with disabled default construction
https://issues.dlang.org/show_bug.cgi?id=10123 Issue 10123 depends on issue 10124, which changed state. Issue 10124 Summary: Array length increases on subtraction of a big number instead of throwing RangeError https://issues.dlang.org/show_bug.cgi?id=10124 What|Removed |Added Status|NEW |RESOLVED Resolution|--- |WONTFIX --
[Issue 10664] Win64: exception handling does not work with COMDAT folding
https://issues.dlang.org/show_bug.cgi?id=10664 Walter Bright changed: What|Removed |Added Keywords||backend --
[Issue 10124] Array length increases on subtraction of a big number instead of throwing RangeError
https://issues.dlang.org/show_bug.cgi?id=10124 Walter Bright changed: What|Removed |Added Keywords||backend Status|NEW |RESOLVED CC||bugzi...@digitalmars.com Resolution|--- |WONTFIX --- Comment #5 from Walter Bright --- This is an artifact of 2's complement arithmetic. Instrumenting the code to detect integer arithmetic overflows will have a large performance penalty, so is not done. --
[Issue 10070] Unexpected exception-related program crash
https://issues.dlang.org/show_bug.cgi?id=10070 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 9643] [64 bit] Incorrect cdouble passing for varags
https://issues.dlang.org/show_bug.cgi?id=9643 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 6705] Bad codegen when passing fields as template alias params
https://issues.dlang.org/show_bug.cgi?id=6705 Walter Bright changed: What|Removed |Added Keywords||backend --
[Issue 5711] Accessing local variable of a function in which an inner class is instantiated trashes this.outer
https://issues.dlang.org/show_bug.cgi?id=5711 Walter Bright changed: What|Removed |Added Status|NEW |RESOLVED CC||bugzi...@digitalmars.com Resolution|--- |WORKSFORME --- Comment #2 from Walter Bright --- Works fine now. --
[Issue 3713] Tail call optimization not enabled with the ?: operator
https://issues.dlang.org/show_bug.cgi?id=3713 Walter Bright changed: What|Removed |Added Keywords||backend CC||bugzi...@digitalmars.com --
[Issue 5570] 64 bit C ABI not followed for passing structs and complex numbers as function parameters
https://issues.dlang.org/show_bug.cgi?id=5570 Walter Bright changed: What|Removed |Added Keywords||backend --