[Issue 3735] op=
https://issues.dlang.org/show_bug.cgi?id=3735 Andrei Alexandrescu and...@erdani.com changed: What|Removed |Added Version|D1 D2 |D2 --
[Issue 3735] op=
http://d.puremagic.com/issues/show_bug.cgi?id=3735 --- Comment #6 from github-bugzi...@puremagic.com 2012-01-23 14:15:24 PST --- Commit pushed to https://github.com/D-Programming-Language/d-programming-language.org https://github.com/D-Programming-Language/d-programming-language.org/commit/2b757bdcc82c69ff4021361acd93f8a0b26df65c fix Issue 3735 - op= -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 3735] op=
http://d.puremagic.com/issues/show_bug.cgi?id=3735 Walter Bright bugzi...@digitalmars.com changed: What|Removed |Added Status|NEW |RESOLVED CC||bugzi...@digitalmars.com Resolution||FIXED -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 3735] op=
http://d.puremagic.com/issues/show_bug.cgi?id=3735 --- Comment #2 from Don clugd...@yahoo.com.au 2012-01-18 12:06:10 PST --- Apart from Stewart's comment, there's also the case of . a = b is different to a = a b, if a is short or byte. (The first does an unsigned shift, the second does a signed shift). -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 3735] op=
http://d.puremagic.com/issues/show_bug.cgi?id=3735 timon.g...@gmx.ch changed: What|Removed |Added CC||timon.g...@gmx.ch --- Comment #3 from timon.g...@gmx.ch 2012-01-18 12:18:44 PST --- The same halds for other binary operators. The sentence should probably just be removed from the spec. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 3735] op=
http://d.puremagic.com/issues/show_bug.cgi?id=3735 --- Comment #4 from Stewart Gordon s...@iname.com 2012-01-18 16:31:48 PST --- (In reply to comment #2) Apart from Stewart's comment, there's also the case of . a = b is different to a = a b, if a is short or byte. (The first does an unsigned shift, the second does a signed shift). Oh yes, that crazy abomination that is promotion. Suppose you have byte a = cast(byte) 0b; // why does it insist on a cast? a = a 3; then what actually happens is 0b 3 promote to int 0b 3 apply shift 0b0000 convert back to a byte 0b1110 If you shift by 25 or more (17 or more for short), you'll start to see the zero bits come through. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 3735] op=
http://d.puremagic.com/issues/show_bug.cgi?id=3735 --- Comment #5 from timon.g...@gmx.ch 2012-01-18 16:36:54 PST --- (In reply to comment #4) byte a = cast(byte) 0b; // why does it insist on a cast? Because 240 does not fit inside the range -128 to 127. static assert(0b != cast(byte)0b); -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---
[Issue 3735] op=
http://d.puremagic.com/issues/show_bug.cgi?id=3735 Stewart Gordon s...@iname.com changed: What|Removed |Added Keywords||rejects-valid URL||http://www.digitalmars.com/ ||d/1.0/expression.html CC||s...@iname.com Platform|Other |All Version|2.038 |D1 D2 OS/Version|Linux |All --- Comment #1 from Stewart Gordon s...@iname.com 2010-09-23 06:16:30 PDT --- I assume you're talking about the fact that code like this fails: -- class Qwert { Qwert opAdd(Qwert yuiop) { return this; } } void main() { Qwert asfdg = new Qwert; asdfg += asdfg; } -- I entirely agree that this code should work, on the bases both of common sense and of this spec. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email --- You are receiving this mail because: ---