Why I can take address of Foo variable but not Bar?
```d
//-dip1000
struct Foo{
private double d;
}
struct Bar{
private void* ptr;
}
void main()@safe{
///this is OK:
{
scope Foo x;
scope ptr = &x;
}
///Error: cannot take address of `scope` local `x` in `@safe`
function `main`:
{
scope Bar x;
scope ptr = &x;
}
}
```