Ada_Ru форум

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

conditional entry call on protected

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

Сообщения

Dmitriy Anisimkov
conditional entry call on protected
2005-07-12 12:43:25

Почему то GNAT не хочет видеть параметров entry вызова в условии entry.

entry Release

(Index : in Positive;

Shutdown : out Boolean)

when Table (Index).Phase /= In_Shutdown is

 

Говорит что "Index" is not visible.

Странно, почему нельзя использовать параметры entry в условии.

 

Как думаете, это недоделка GNAT а, или так задумано ?

Dmitriy Anisimkov wrote:

 

Почему то GNAT не хочет видеть параметров entry вызова в условии entry.

 

entry Release

(Index : in Positive;

Shutdown : out Boolean)

when Table (Index).Phase /= In_Shutdown is

 

Говорит что "Index" is not visible.

Странно, почему нельзя использовать параметры entry в условии.

 

Как думаете, это недоделка GNAT а, или так задумано ?

 

Так и задумано - параметры входа не могут использоваться в барьерном

ограничении, чтобы не создавать неразбериху в очереди вызовов - когда для

каких-то вызовов (в зависимости от параметров!) барьер истинный,

а для каких-то - ложный.

 

Это явно прописано в стандарте.

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

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