Mercurial > projects > dstress
changeset 483:409b666ab312
scope problems with sizeof/offsetof
brad beveridge <brad@nowhere.com>
2005-04-25
news:d4ie14$1evb$1@digitaldaemon.com
author | thomask |
---|---|
date | Tue, 26 Apr 2005 11:50:40 +0000 |
parents | 64666b604c01 |
children | 777a8ac8b220 |
files | run/offsetof_78.d run/offsetof_79.d run/offsetof_80.d run/sizeof_13.d run/sizeof_14.d run/sizeof_15.d |
diffstat | 6 files changed, 168 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/offsetof_78.d Tue Apr 26 11:50:40 2005 +0000 @@ -0,0 +1,28 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ brad beveridge <brad@nowhere.com> +// @date@ 2005-04-25 +// @uri@ news:d4ie14$1evb$1@digitaldaemon.com + +module dstress.run.offsetof_78; + +size_t res; + +struct Foo{ + float a; +} + +struct Bar{ + void test(){ + assert(Foo.a.offsetof==res); + } +} + +int main(){ + res=Foo.a.offsetof; + Bar* b = new Bar; + b.test(); + return 0; +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/offsetof_79.d Tue Apr 26 11:50:40 2005 +0000 @@ -0,0 +1,28 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ brad beveridge <brad@nowhere.com> +// @date@ 2005-04-25 +// @uri@ news:d4ie14$1evb$1@digitaldaemon.com + +module dstress.run.offsetof_79; + +size_t res; + +class Foo{ + float a; +} + +class Bar{ + void test(){ + assert((new Foo).a.offsetof==res); + } +} + +int main(){ + res=(new Foo).a.offsetof; + Bar b = new Bar; + b.test(); + return 0; +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/offsetof_80.d Tue Apr 26 11:50:40 2005 +0000 @@ -0,0 +1,28 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ brad beveridge <brad@nowhere.com> +// @date@ 2005-04-25 +// @uri@ news:d4ie14$1evb$1@digitaldaemon.com + +module dstress.run.offsetof_80; + +size_t res; + +struct Foo{ + float a; +} + +struct Bar{ + void test(){ + assert((new Foo).a.offsetof==res); + } +} + +int main(){ + res=Foo.a.offsetof; + Bar* b = new Bar; + b.test(); + return 0; +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/sizeof_13.d Tue Apr 26 11:50:40 2005 +0000 @@ -0,0 +1,28 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ brad beveridge <brad@nowhere.com> +// @date@ 2005-04-25 +// @uri@ news:d4ie14$1evb$1@digitaldaemon.com + +module dstress.run.sizeof_13; + +size_t res; + +class Foo{ + float a; +} + +class Bar{ + void test(){ + assert((new Foo).a.sizeof==res); + } +} + +int main(){ + res=(new Foo).a.sizeof; + Bar b = new Bar; + b.test(); + return 0; +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/sizeof_14.d Tue Apr 26 11:50:40 2005 +0000 @@ -0,0 +1,28 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ brad beveridge <brad@nowhere.com> +// @date@ 2005-04-25 +// @uri@ news:d4ie14$1evb$1@digitaldaemon.com + +module dstress.run.sizeof_14; + +size_t res; + +struct Foo{ + float a; +} + +struct Bar{ + void test(){ + assert(Foo.a.sizeof==res); + } +} + +int main(){ + res=Foo.a.sizeof; + Bar* b = new Bar; + b.test(); + return 0; +}
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/run/sizeof_15.d Tue Apr 26 11:50:40 2005 +0000 @@ -0,0 +1,28 @@ +// $HeadURL$ +// $Date$ +// $Author$ + +// @author@ brad beveridge <brad@nowhere.com> +// @date@ 2005-04-25 +// @uri@ news:d4ie14$1evb$1@digitaldaemon.com + +module dstress.run.sizeof_15; + +size_t res; + +struct Foo{ + float a; +} + +struct Bar{ + void test(){ + assert((new Foo).a.sizeof==res); + } +} + +int main(){ + res=Foo.a.sizeof; + Bar* b = new Bar; + b.test(); + return 0; +}