Ada_Ru форум

Обсуждение языка Ада

null exclusion

Оставить новое сообщение

Сообщения

Vadim Godunko
null exclusion
2008-09-14 14:04:21

Доброго времени суток!

 

Подскажите пожалуйста, насколько вот такой код является кодом Ada2005:

 

type T is tagged null record;

type T_Access is access all T'Class;

type L (X : not null T_Access) is null recrod;

 

Собственно интересует null exclusion в объявлении дискриминанта.

On Sun, 14 Sep 2008 18:04:21 +0400, you wrote:

 

Подскажите пожалуйста, насколько вот такой код является кодом Ada2005:

type T is tagged null record;

type T_Access is access all T'Class;

type L (X : not null T_Access) is null recrod;

 

Собственно интересует null exclusion в объявлении дискриминанта.

 

Не вижу проблем (кроме как с "recrod"). Согласно RM 3.7 (5/2) все в порядке.

 

Вообще, not null можно навешивать на подтипы позже:

 

subtype X is not null Y;

 

Но только один раз (странное такое ограничение, я не знаю как они в настраиваемых параметрах эту проблему решают, если вообще... Лень разбираться). Еще его можно добавлять к производным типам:

 

type X is new not null Y;

 

А вот constant навешивать нельзя. Раз не constant, с тем и живи.

 

--

Regards,

Dmitry A. Kazakov

http://www.dmitry-kazakov.de

Dmitry A. Kazakov wrote:

On Sun, 14 Sep 2008 18:04:21 +0400, you wrote:

 

Подскажите пожалуйста, насколько вот такой код является кодом Ada2005:

 

type T is tagged null record;

type T_Access is access all T'Class;

type L (X : not null T_Access) is null recrod;

 

Собственно интересует null exclusion в объявлении дискриминанта.

 

Не вижу проблем (кроме как с "recrod"). Согласно RM 3.7 (5/2) все в

порядке.

 

Спасибо огромное!

Новое сообщение:
Страницы: 1

Чтобы оставить новое сообщение необходимо Зарегистрироваться и Войти