Ошибочный вызов метода интерфейса

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

Ответить
Dmitry Arefiev
незнакомец
Сообщения: 2
Зарегистрирован: 20.02.2007 11:11:55
Контактная информация:

Ошибочный вызов метода интерфейса

Сообщение Dmitry Arefiev »

Добрый день

При отладке проекта наткнулся на проблему. Есть объект реализующий интерфейс. Компилятор упорно путает вызов двух методов этого интерфейса. Т.е. когда стоит вызов Intf.Proc1 вызывается MyObj.Proc2. А когда Intf.Proc2, то вызывается MyObj.Proc1. Тот же проект компилируется и работает без проблем в Delphi.

Сталкивался ли кто с подобным поведением и если да, то каковы пути решения ?

Платформа: Win32
FPC: 2.0.4

Удачи,
Дмитрий
Аватара пользователя
shade
энтузиаст
Сообщения: 879
Зарегистрирован: 21.02.2006 19:15:48
Откуда: http://shamangrad.net/
Контактная информация:

Сообщение shade »

Предположу что вы что-то делаете неправильно.
В определении интерфейса существенен порядок определения методов, описанная вами проблема естествено возникнет если переставить местами определения методов в интерфейсе.

Приведите пример...
Dmitry Arefiev
незнакомец
Сообщения: 2
Зарегистрирован: 20.02.2007 11:11:55
Контактная информация:

Сообщение Dmitry Arefiev »

Предположу что вы что-то делаете неправильно

Я бы согласился, если бы в Delphi не работало бы.
Приведите пример...

Выделить пример у меня не получилось. Но убедиться в происходящем можно, скачав AnyDAC с моего сайта (www.da-soft.com). Детали я могу указать в отдельном письме.
Ответить