Компилятор может выводить, то есть «список» его вход, вместе с любыми сообщениями, что она будет генерировать, например, сообщения об ошибках. Это полезно, когда вам нужно четкое, подробное представление о том, что такое сообщение, в контексте. IDE обычно связывают сообщение с кодом, но даже сегодня, учитывая, что Jacob's подсказывает историю вычислений, список может буквально указывать. Используя pragma List
, программист может исключить то, что не нужно указывать, если он или она знает. Или, исключить то, что никогда не следует перечислять, по причинам секретности.
Листинг первого, то исходный текст программы, с pragma List
:
Compiling: /some/path/some_proc.adb
Source file time stamp: 2017-01-30 08:30:40
Compiled at: 2017-01-30 09:30:42
1. procedure Some_Proc is
2. procedure Inner;
3. -- Does this and that...
4.
5. pragma List (Off);
10. pragma List (On);
11.
12. begin
13. Inner (42);
|
>>> too many arguments in call to "Inner"
14. end Some_Proc;
14 lines: 1 error
gprbuild: *** compilation phase failed
(Если ваш компилятор GNAT, указать -gnatl
среди переключателей, для включения в список, и компилировать :)
procedure Some_Proc is
procedure Inner;
-- Does this and that...
pragma List (Off);
procedure Inner is
begin
null;
end Inner;
pragma List (On);
begin
Inner (42);
end Some_Proc;