начал всматриваться что сгенерировалось.
Код:
(* IOtAction Interface *)
IOtAction* = POINTER TO RECORD ["{50CF2A57-582B-48BA-9344-B7FB1F280472}"] (stdole.IDispatch) (* dispatch, dual *)
END;
в этот фрагмент внес 2 исправления и тогда он скомпилировался без ошибок:
Код:
(* IOtAction Interface *)
IOtAction* = POINTER TO ABSTRACT RECORD ["{50CF2A57-582B-48BA-9344-B7FB1F280472}"] (WinOleAut.IDispatch) (* dispatch, dual *)
END;
POINTER TO RECORD -> POINTER TO ABSTRACT RECORD (по просьбе компилятора)
и
stdole.IDispatch -> WinOleAut.IDispatch
но кроме этого все интерфейсы сгенерились дважды:
Код:
(* IOtEmailAttachments Interface *)
IOtEmailAttachments* = POINTER TO ABSTRACT RECORD ["{4414FD91-D8BB-11D3-AAE7-00500422BC69}"] (WinOleAut.IDispatch) (* dispatch, dual *)
END;
(* IOtEmailAttachments Interface *)
IOtEmailAttachments* = POINTER TO ABSTRACT RECORD ["{4414FD91-D8BB-11D3-AAE7-00500422BC69}"] (WinOleAut.IDispatch) (* size: 4, vtbl size: 64, dual, oleauto *)
END;
и компилятор сообщает "multiply defined identifier"
если 1 удалить, то этот фрагмент тоже компилится (разница в них только в последующем комментарии, я же правильно понимаю,
что для компилятора и среды он не несет никакой смысловой нагрузки?).
это так и должно быть? или я что-то изначально неправильно делаю?
Интерфейсов в сервере много, вот сейчас ошибок компиляции этого модуля 12тыс. :
Код:
compiling "CtlOtAut"
12152 errors detected
Как то странно много ошибок компиляции получается, это при том что я уже произвел множественную замену "POINTER TO ABSTRACT RECORD" и "stdole. -> WinOleAut."
Подскажите, пжст, я на правильном пути или нужно делать что то по другому?