On 4/6/2012 2:54 AM, Timon Gehr wrote:
Should add additional information to the type Foo. I don't see any issues with
it, and not supporting it would be very strange.

How would:

   @attr(foo) int x;
   int y;

work? Are x and y the same type or not? Now, consider:

   auto c = b ? x : y;

What type does c have? int or @attr(foo)int ? And that's really just the beginning. How about:

  struct S(T) {
    T t;
  }

Instantiate it with S!int and S!(@attr(foo)int). Are those the same instantiation, or different? If the same, does S.t have the attribute or not?

And, whatever you choose for the semantics, what is the sensible, intuitive rule for it?

Reply via email to