Mercurial > projects > dstress
changeset 1356:36032afb4652
[Issue 858] Forward reference to struct inside class crashes the compiler
Georg Ramme <georg.ramme@gmail.com>
2007-01-19
http://d.puremagic.com/issues/show_bug.cgi?id=858
author | thomask |
---|---|
date | Fri, 23 Feb 2007 22:34:10 +0000 |
parents | 96782506cee0 |
children | b1b781fac9a5 |
files | reporter.txt run/f/forward_reference_17_A.d run/f/forward_reference_17_B.d |
diffstat | 3 files changed, 59 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/reporter.txt Fri Feb 23 22:33:50 2007 +0000 +++ b/reporter.txt Fri Feb 23 22:34:10 2007 +0000 @@ -65,6 +65,7 @@ Frits van Bommel <fvbommel@wxs.nl> Garett Bass <garettbass@studiotekne.com> Geoff Hickey +Georg Ramme <georg.ramme@gmail.com> Hauke Duden <H.NS.Duden@gmx.net> Hiroshi Sakurai icee <iceelyne@gmail.com>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/f/forward_reference_17_A.d Fri Feb 23 22:34:10 2007 +0000 @@ -0,0 +1,29 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Georg Ramme <georg.ramme@gmail.com> +// @date@ 2007-01-19 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=858 +// @desc@ [Issue 858] Forward reference to struct inside class crashes the compiler + +module dstress.run.f.forward_reference_17_A; + +class Outer{ + this(){ + Inner i = new Inner(); + } + + class Inner{ + Strct str; + } +} + +struct Strct{ + int i; +} + +int main(){ + Outer o = new Outer(); + return 0; +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/f/forward_reference_17_B.d Fri Feb 23 22:34:10 2007 +0000 @@ -0,0 +1,29 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ Georg Ramme <georg.ramme@gmail.com> +// @date@ 2007-01-19 +// @uri@ http://d.puremagic.com/issues/show_bug.cgi?id=858 +// @desc@ [Issue 858] Forward reference to struct inside class crashes the compiler + +module dstress.run.f.forward_reference_17_B; + +struct Strct{ + int i; +} + +class Outer{ + this(){ + Inner i = new Inner(); + } + + class Inner{ + Strct str; + } +} + +int main(){ + Outer o = new Outer(); + return 0; +}