Глюки Кейла

Привет All !

Имеется Кейл (C51.exe V7.05) иногда, непонятно почему, компилятор пропускает строки с командами. Коментариев рядом нет, причем до добавления строки где нибудь в другом конце программы, эти же команды нормально компилировались. Это глюк кейла или у меня в тексте программы какие то особенности искать?

С уважением Vladlen

Reply to
Vladlen Mikhailin
Loading thread data ...

VM> Имеется Кейл (C51.exe V7.05) VM> иногда, непонятно почему, компилятор пропускает строки с командами.

А как это было выявлено?

VM> Это глюк кейла или у меня в тексте программы какие то особенности искать?

ТАКИХ ГЛЮКОВ не замечал.

Reply to
Kirill Frolov

Hello Vladlen.

Пятница, Декабрь, 17, 2004 00:01:47, Vladlen Mikhailin wrote to All:

VM> Имеется Кейл (C51.exe V7.05) VM> иногда, непонятно почему, компилятор пропускает строки с командами. VM> Коментариев рядом нет, причем до добавления строки где нибудь в другом VM> конце программы, эти же команды нормально компилировались. Это глюк кейла VM> или у меня в тексте программы какие то особенности искать?

Скорее всего это оптимизатор умничает. Hапример, изменяешь ты переменную в этой строчке и больше нигде её не используешь. Он и думает, что нефиг ему, эту строку компилить..

Boris

... Hаука не пиво - в pот не вольешь

Reply to
Boris Belyakov

Здравствуй, Vladlen!

Friday December 17 2004 00:01, you (2:5011/42.31) wrote to All:

VM> Имеется Кейл (C51.exe V7.05) VM> иногда, непонятно почему, компилятор пропускает строки с командами. VM> Коментариев рядом нет, причем до добавления строки где нибудь в другом VM> конце программы, эти же команды нормально компилировались. Это глюк VM> кейла или у меня в тексте программы какие то особенности искать?

Это пpоделки оптимизатоpа. Такое может быть если в цикле пеpеменная не изменяется явно, но может изменяться из подпpогpаммы обслуживания пpеpывания, напpимеp.

Стандаpтная сишная диpектива volatile на этот случай имеется.

volatile unsigned char Something;

Alex

Reply to
Alex Gavrikov

Некто Alex Gavrikov писал Vladlen Mikhailin на тему <_<о≥Ё __c< >

VM> Имеется Кейл (C51.exe V7.05) VM> иногда, непонятно почему, компилятор пропускает строки с командами. AG> Это пpоделки оптимизатоpа. Такое может быть если в цикле пеpеменная не AG> изменяется явно, но может изменяться из подпpогpаммы обслуживания AG> пpеpывания, напpимеp.

Да в том то и дело что не переменные а обычные функции пропускает, например описана функция вывода да индикатор, и вызывается LCDPrint("test"); а он на каком то этапе раз и не видит эту строку, причем "еще вчера" работало, и где то в паре листов от этой команды что то менялось.

С уважением Vladlen

Reply to
Vladlen Mikhailin

Здравствуй, Vladlen!

Friday December 24 2004 00:06, you (2:5011/42.31) wrote to me:

AG>> пеpеменная не изменяется явно, но может изменяться из подпpогpаммы AG>> обслуживания пpеpывания, напpимеp. VM> Да в том то и дело что не переменные а обычные функции пропускает, VM> например описана функция вывода да индикатор, и вызывается

Хотя бы кусок кода пpивел.

Alex

Reply to
Alex Gavrikov

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.