view test/bug13.d @ 215:a58d8f4b84df trunk

[svn r231] Changed: warnings are no longer treated as an error. Added some comments and cleaned up CallExp::toElem a tiny bit. Fixed: struct literals always reported inplace assignment even if they allocated a temporary. Fixed: passing stuff to a D-style vararg which did inplace assignment was generated suboptimal code.
author lindquist
date Tue, 03 Jun 2008 13:51:09 +0200
parents 8b0e809563df
children
line wrap: on
line source

module bug13;

void func1(ubyte[4]* arr)
{
    ubyte* b = &(*arr)[0];
    func2(&(*arr)[1]);
}

void func2(ubyte* ptr)
{
    assert(*ptr == 2);
}

void main()
{
    ubyte[4] arr = [cast(ubyte)1,2,3,4];
    func1(&arr);
}