Разница в поведении 0.9.23 (FPC 2.1.5) и 0.9.21 (FPC 2.0.4)

Вопросы программирования и использования среды Lazarus.

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

Ответить
cav
новенький
Сообщения: 28
Зарегистрирован: 16.11.2006 07:56:03
Откуда: Кемерово

Разница в поведении 0.9.23 (FPC 2.1.5) и 0.9.21 (FPC 2.0.4)

Сообщение cav »

Имеется некий класс определенный следующим образом

Код: Выделить всё

     TSheme=class(TObject)
      FCountShemeItem:integer;
      FKeyShemeX:array of TKeySheme;
      FCommandText:TStringList;
      procedure SetComandSt(value:tStringList);
     public
      constructor Create;
      destructor Destroy;override;
      ........................
      function GetKeyShemeX(Number:integer):TKeySheme;
      procedure SetKeyShemeX(Number:integer;KeySheme:TKeySheme);
      ............................
     published
      property CountItem:Integer read fContitem;
      property CountSheme:integer read FCountShemeItem;
      property CommandList:TStringList read FCommandText;
     end; 

function TSheme.GetKeyShemeX(Number:integer):TKeySheme;
begin
   GetKeyShemeX.X:=FKeyShemeX[Number].X;
   GetKeyShemeX.Y:=FKeyShemeX[Number].Y;
   GetKeyShemeX.H:=FKeyShemeX[Number].H;
   GetKeyShemeX.W:=FKeyShemeX[Number].W;
   GetKeyShemeX.Tag:=FKeyShemeX[Number].Tag;
    GetKeyShemeX.KeyItemSheme:=FKeyShemeX[Number].KeyItemSheme;
end;                                               


используется в виде

Код: Выделить всё

var
   LSK:TKeySheme;
begin
  ...........
  lsk:=Sheme.GetKeyShemeX(i);
  ....................

Компилируется и собирается в обоих без проблем но если в 0.9.21 код возвращает значение то в 0.9.23 нет....... это бага или фича ?
если кому интересно могу кинуть исходиникики для проверки у мента тока как получается или .....
ironwit
незнакомец
Сообщения: 2
Зарегистрирован: 02.07.2007 09:12:59

Сообщение ironwit »

попробуй вместо имени функции применить Result.
cav
новенький
Сообщения: 28
Зарегистрирован: 16.11.2006 07:56:03
Откуда: Кемерово

Сообщение cav »

Не помогло :( бли не передает значение и все.....
причем не передает именно в этом куске

Код: Выделить всё

GetKeyShemeX.KeyItemSheme:=FKeyShemeX[Number].KeyItemSheme;
ironwit
незнакомец
Сообщения: 2
Зарегистрирован: 02.07.2007 09:12:59

Сообщение ironwit »

а что отладчик то говорит?
что дает result в момент выхода из функции?
Юра
постоялец
Сообщения: 163
Зарегистрирован: 25.05.2005 10:20:09
Откуда: Украина, Киев

Сообщение Юра »

Попробуй воспроизвести проблему на маленьком куске кода и засылай баг репорт если воспроизведется с этим кодом.
cav
новенький
Сообщения: 28
Зарегистрирован: 16.11.2006 07:56:03
Откуда: Кемерово

Сообщение cav »

Юра писал(а):Попробуй воспроизвести проблему на маленьком куске кода и засылай баг репорт если воспроизведется с этим кодом.

Проблемма воспроизводится на 100% :(. Может кото еще проверить у себя. Вдруг просто сборка FPC с глюком ?
Аватара пользователя
Attid
долгожитель
Сообщения: 2588
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E
Контактная информация:

Сообщение Attid »

пиши багтрекер
Ответить