[Issue 8650] SLice opOpAssign SLice with overlap does not throw

2015-06-08 Thread via Digitalmars-d-bugs
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

2013-11-15 Thread d-bugmail
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

2013-11-15 Thread d-bugmail
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

2013-11-15 Thread d-bugmail
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

2013-11-14 Thread d-bugmail
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

2013-11-09 Thread d-bugmail
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

2013-11-09 Thread d-bugmail
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

2013-11-07 Thread d-bugmail
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

2012-09-15 Thread d-bugmail
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

2012-09-15 Thread d-bugmail
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

2012-09-15 Thread d-bugmail
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: ---