6.2.1. Преобразование имён для блоков данных

На верх  Назад  Вперёд

Правила преобразования имён для переменных и типизированных констант следующие:

Все имена переменных преобразуются в верхний регистр

Переменные в основной программе или в разделе private модуля будут иметь перед именем символ подчёркивания (_)

Типизированные константы будут иметь TC__ перед именем

Переменные private в модуле имеют в качестве префикса имя этого модуля: U_UNITNAME_

Типизированные константы в разделах public и private в модуле имеют в качестве префикса имя этого модуля: TC__UNITNAME$$

Примеры:

unit testvars;
 
interface
 
const
publictypedconst : integer = 0;
var
  publicvar : integer;
 
implementation
const
  privatetypedconst : integer = 1;
var
  privatevar : integer;
end.

В результате будет сгенерирован ассемблерный код для GNU ассемблера:

.file "testvars.pas"
.text
.data
# [6] publictypedconst : integer = 0;
.globl TC__TESTVARS$$_PUBLICTYPEDCONST
TC__TESTVARS$$_PUBLICTYPEDCONST:
.short 0
# [12] privatetypedconst : integer = 1;
TC__TESTVARS$$_PRIVATETYPEDCONST:
.short 1
.bss
# [8] publicvar : integer;
.comm U_TESTVARS_PUBLICVAR,2
# [14] privatevar : integer;
.lcomm _PRIVATEVAR,2