[Issue 8650] SLice opOpAssign SLice with overlap does not throw
https://issues.dlang.org/show_bug.cgi?id=8650 Andrei Alexandrescu and...@erdani.com changed: What|Removed |Added Version|unspecified |D2 --
[Issue 8650] SLice opOpAssign SLice with overlap does not throw
https://d.puremagic.com/issues/show_bug.cgi?id=8650 --- Comment #10 from Martin Nowak c...@dawg.eu 2013-11-15 00:49:44 PST --- (In reply to comment #8) IMHO, debug/release builds of druntime (or any library) are the wrong direction for contract enforcement. They pre/post conditions should be visible to call sites and executed based on the call site's compilation settings. For _all_ code, not just druntime or phobos. You're right, any contract that is part of the API needs to be visible (or at least callable) for the caller. -- Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 8650] SLice opOpAssign SLice with overlap does not throw
https://d.puremagic.com/issues/show_bug.cgi?id=8650 --- Comment #11 from github-bugzi...@puremagic.com 2013-11-15 03:57:37 PST --- Commit pushed to master at https://github.com/D-Programming-Language/druntime https://github.com/D-Programming-Language/druntime/commit/a6aa6ee66dcbe3f77b4e0c816e02d8f32040dede Fix Issue 8650 - SLice opOpAssign SLice with overlap does not throw Issue URL: http://d.puremagic.com/issues/show_bug.cgi?id=8650 -- Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 8650] SLice opOpAssign SLice with overlap does not throw
https://d.puremagic.com/issues/show_bug.cgi?id=8650 Stewart Gordon s...@iname.com changed: What|Removed |Added CC||s...@iname.com --- Comment #12 from Stewart Gordon s...@iname.com 2013-11-15 10:30:18 PST --- (In reply to comment #8) IMHO, debug/release builds By debug do you mean debug or non-release? of druntime (or any library) are the wrong direction for contract enforcement. Then release a build that has the in contracts but is otherwise a release build. They pre/post conditions should be visible to call sites and executed based on the call site's compilation settings. For _all_ code, not just druntime or phobos. This has been asked for on many occasions. But Walter doesn't seem to like this idea, so I filed issue 9482 and issue 9483 as an alternative way of dealing with the same problem. -- Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 8650] SLice opOpAssign SLice with overlap does not throw
https://d.puremagic.com/issues/show_bug.cgi?id=8650 yebblies yebbl...@gmail.com changed: What|Removed |Added Status|NEW |RESOLVED CC||yebbl...@gmail.com Resolution||DUPLICATE --- Comment #9 from yebblies yebbl...@gmail.com 2013-11-15 16:39:46 EST --- *** This issue has been marked as a duplicate of issue 2547 *** -- Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 8650] SLice opOpAssign SLice with overlap does not throw
https://d.puremagic.com/issues/show_bug.cgi?id=8650 Martin Nowak c...@dawg.eu changed: What|Removed |Added CC||c...@dawg.eu --- Comment #7 from Martin Nowak c...@dawg.eu 2013-11-09 12:26:29 PST --- (In reply to comment #4) (In reply to comment #1) The problem would seem to come from arrayint.d from druntime. Apparently, the in tests are not executed, because the tests are in there. Turns out the problem is that the in/assert cases are removed from the druntime libs, since it is compiled in release when distributed. Right, I think in the long-term we should fix this by providing debug phobos/druntime libraries with additional checks. -- Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 8650] SLice opOpAssign SLice with overlap does not throw
https://d.puremagic.com/issues/show_bug.cgi?id=8650 Brad Roberts bra...@puremagic.com changed: What|Removed |Added CC||bra...@puremagic.com --- Comment #8 from Brad Roberts bra...@puremagic.com 2013-11-09 12:40:09 PST --- IMHO, debug/release builds of druntime (or any library) are the wrong direction for contract enforcement. They pre/post conditions should be visible to call sites and executed based on the call site's compilation settings. For _all_ code, not just druntime or phobos. -- Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 8650] SLice opOpAssign SLice with overlap does not throw
https://d.puremagic.com/issues/show_bug.cgi?id=8650 Denis Shelomovskij verylonglogin@gmail.com changed: What|Removed |Added Keywords||pull --- Comment #6 from Denis Shelomovskij verylonglogin@gmail.com 2013-11-07 18:25:54 MSK --- This fix is in pull which adds more utils to druntime: https://github.com/D-Programming-Language/druntime/pull/661 -- Configure issuemail: https://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 8650] SLice opOpAssign SLice with overlap does not throw
http://d.puremagic.com/issues/show_bug.cgi?id=8650 bearophile_h...@eml.cc changed: What|Removed |Added CC||bearophile_h...@eml.cc --- Comment #2 from bearophile_h...@eml.cc 2012-09-15 06:44:59 PDT --- (In reply to comment #1) The problem would seem to come from arrayint.d from druntime. Apparently, the in tests are not executed, because the tests are in there. And replacing those asserts with enforces inside the function body is not a solution (it's just a way to try to kill D Contract Programming). -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 8650] SLice opOpAssign SLice with overlap does not throw
http://d.puremagic.com/issues/show_bug.cgi?id=8650 --- Comment #1 from monarchdo...@gmail.com 2012-09-15 06:40:47 PDT --- Also, doesn't check length: void main() { int[ 5] a; int[10] b; a[] += b[]; b[] += a[]; } Behavior: Runs until end of program. Expected: A error to be thrown: arrays have different length. The problem would seem to come from arrayint.d from druntime. Apparently, the in tests are not executed, because the tests are in there. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 8650] SLice opOpAssign SLice with overlap does not throw
http://d.puremagic.com/issues/show_bug.cgi?id=8650 --- Comment #3 from monarchdo...@gmail.com 2012-09-15 07:01:03 PDT --- (In reply to comment #2) (In reply to comment #1) The problem would seem to come from arrayint.d from druntime. Apparently, the in tests are not executed, because the tests are in there. And replacing those asserts with enforces inside the function body is not a solution (it's just a way to try to kill D Contract Programming). I don't seem to remember suggesting that... I was just stating where I think the problem comes from. I'm compiling in debug, so I expected the assert to be evaluated. As a matter of fact, if anything, given related issue 8651, I'd have placed asserts in the function body. NOT enforces. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---