Mercurial > projects > dstress
changeset 1346:9084482d7c1e
[Issue 832] NRVO: return inside foreach results in junk
Alan Knowles <alan@akbkhome.com>
2007-01-12
http://d.puremagic.com/issues/show_bug.cgi?id=832
author | thomask |
---|---|
date | Wed, 14 Feb 2007 10:09:28 +0000 |
parents | b34b5b54b00a |
children | 5dcdd1cd6a66 |
files | reporter.txt run/s/struct_27_A.d |
diffstat | 2 files changed, 37 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/reporter.txt Wed Feb 14 10:09:05 2007 +0000 +++ b/reporter.txt Wed Feb 14 10:09:28 2007 +0000 @@ -2,6 +2,7 @@ ahiru <ahiru@1dk.jp> AJG <AJG@nospam.com> +Alan Knowles <alan@akbkhome.com> Alberto Simon <lugaidster@gmail.com> Aleksey Bobnev <uw@front.ru> Alex <CppCoder@gmail.com> @@ -52,6 +53,7 @@ Don Clugston <clugdbug@yahoo.com.au> downs <default_357-line@yahoo.de> ElfQT <dethjunk@yahoo.com> +Elmar Zander <elmar@zandere.de> Eric Anderton (aka Pragma) <ericanderton@yahoo.com> Eugene Pelekhay <pelekhay@gmail.com> Florian Sonnenberger <nairolf@online.de>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/s/struct_27_A.d Wed Feb 14 10:09:28 2007 +0000 @@ -0,0 +1,35 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Alan Knowles <alan@akbkhome.com> +// @date@ 2007-01-12 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=832 +// @desc@ [Issue 832] NRVO: return inside foreach results in junk + +module dstress.run.s.struct_27_A; + +struct S{ + int i; + long _forec_nrvo; +} + +S first(){ + foreach(element; s){ + if(2 != element.i){ + assert(0); + } + return element; + } +} + +S[1] s; + +int main(){ + s[0].i = 2; + if(2 != first().i){ + assert(0); + } + + return 0; +}