Еще непонятки с вариантами
От: Ka3a4oK  
Дата: 10.02.11 14:09
Оценка:
Странное поведение вариантов.

module Some
{
  type Boo=int;

  variant Foo
  {
  |A
  |B
  };

};

func():void
{
  def a=Some.Boo(); //Ошибка компиляции - тип не виден. Все верно.
  def b=Some.Foo(); //Ошибка компиляции - тип не виден. Все верно.
  def c=Hashtable.[Some.Foo, int](); //Ошибка компиляции - тип не виден. Все верно.

(!)  def d=Hashtable.[Some.Foo.A, int](); //Компилируется нормально. При входе в функцию возникает исключение в конструкторе таблицы.
}
varian
Re: Еще непонятки с вариантами
От: hardcase Пират http://nemerle.org
Дата: 10.02.11 14:23
Оценка:
Здравствуйте, Ka3a4oK, Вы писали:

KK>Странное поведение вариантов.


Это проблема не с вариантами, видимо где-то недостаточно строго проверяется видимость типов при инстанцировании полиморфных типов.
/* иЗвиНите зА неРовнЫй поЧерК */
Re[2]: Еще непонятки с вариантами
От: Ka3a4oK  
Дата: 10.02.11 16:43
Оценка:
Здравствуйте, hardcase, Вы писали:

H>Здравствуйте, Ka3a4oK, Вы писали:


KK>>Странное поведение вариантов.


H>Это проблема не с вариантами, видимо где-то недостаточно строго проверяется видимость типов при инстанцировании полиморфных типов.


Это известный баг или создать новый тикет?
Re[3]: Еще непонятки с вариантами
От: hardcase Пират http://nemerle.org
Дата: 11.02.11 08:18
Оценка:
Здравствуйте, Ka3a4oK, Вы писали:

H>>Это проблема не с вариантами, видимо где-то недостаточно строго проверяется видимость типов при инстанцировании полиморфных типов.


KK>Это известный баг или создать новый тикет?


Не припоминаю такого бага, но тикет создай, объединить если что всегда можно.
/* иЗвиНите зА неРовнЫй поЧерК */
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.