Thread overview | |||||||
---|---|---|---|---|---|---|---|
|
May 08, 2012 [Issue 8064] New: return reference semantics not obeyed on delegates? | ||||
---|---|---|---|---|
| ||||
http://d.puremagic.com/issues/show_bug.cgi?id=8064 Summary: return reference semantics not obeyed on delegates? Product: D Version: D2 Platform: All OS/Version: All Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: nobody@puremagic.com ReportedBy: gasper.azman@gmail.com --- Comment #0 from Gašper Ažman <gasper.azman@gmail.com> 2012-05-08 03:12:02 PDT --- I feel this is best explained with a testcase: This is the error DMD gives: test.d(21): Error: arryacc(3LU) is not an lvalue code: ##### class A { private size_t size = 5; auto newArrayAccessor(T)() { T[] a = new T[size]; ref T accessor(size_t i) { return a[i]; } return &accessor; } } void main() { uint[5] arry; ref uint acc(size_t i) { return arry[i]; } acc(3) = 5; // works auto a = new A; auto arryacc = a.newArrayAccessor!(uint)(); arryacc(3) = 5; // doesn't work. What gives? } -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
May 08, 2012 [Issue 8064] return reference semantics not obeyed on delegates? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Gašper Ažman | http://d.puremagic.com/issues/show_bug.cgi?id=8064 --- Comment #1 from Gašper Ažman <gasper.azman@gmail.com> 2012-05-08 03:27:13 PDT --- Simplified testcase (by q66): void main() { uint[5] arry; ref uint acc(size_t i) { return arry[i]; } auto arryacc = &acc; arryacc(3) = 5; // same error } -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
May 08, 2012 [Issue 8064] return reference semantics not obeyed on delegates? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Gašper Ažman | http://d.puremagic.com/issues/show_bug.cgi?id=8064 Kenji Hara <k.hara.pg@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |pull, rejects-valid --- Comment #2 from Kenji Hara <k.hara.pg@gmail.com> 2012-05-08 04:57:01 PDT --- https://github.com/D-Programming-Language/dmd/pull/933 -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
May 11, 2012 [Issue 8064] return reference semantics not obeyed on delegates? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Gašper Ažman | http://d.puremagic.com/issues/show_bug.cgi?id=8064 --- Comment #3 from github-bugzilla@puremagic.com 2012-05-10 20:00:23 PDT --- Commits pushed to master at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/5a9b927ae2501aac795c03d1cd6be79188e1e197 fix Issue 8064 - return reference semantics not obeyed on delegates? https://github.com/D-Programming-Language/dmd/commit/813a0216b2a205fb06bd8d02d7c667317c7b5ce4 Merge pull request #933 from 9rnsr/fix8064 Issue 8064 - return reference semantics not obeyed on delegates? -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
May 11, 2012 [Issue 8064] return reference semantics not obeyed on delegates? | ||||
---|---|---|---|---|
| ||||
Posted in reply to Gašper Ažman | http://d.puremagic.com/issues/show_bug.cgi?id=8064 Walter Bright <bugzilla@digitalmars.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |bugzilla@digitalmars.com Resolution| |FIXED -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
Copyright © 1999-2021 by the D Language Foundation