[an error occurred while processing this directive]
Супер, но если вдуматься то так и должно быть. Проверил на MS QC2.5(+)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено abivan 08 июля 2003 г. 15:07
В ответ на: Пользуюсь компилятором PICC18 v8.20 PL4.0. Нашел ошибки, но то ли я чего-то не понимаю, то ли их служба поддержки лапшу на уши вешает (+) отправлено Вопрос 08 июля 2003 г. 11:59

>unsigned long my_var1 ;
>unsigned long my_var1 ; // I can declare the same variable twice !!!
То что он не ругается это правильно. Вот если так написать, то ругнется.
unsigned long my_var1 ;
long my_var1 ;
С первым покончено HiTech == MSQuckC
Второе, это печально, но линкер не знает ничего о типах переменных. О них знает только компилятор. Чтобы на это не нарываться описывайте переменные в одном файле-файле подключения.
Было одно различие. Отладчик Hitech видит эту переменную как ulong, а MSQC - как float.

Я вот недавно на такую багу наткнулся
enum aaa{
ADC_r_Normal
ADC_r_ErrEEprom ,
ADC_r_ErrHardware ,
ADC_r_ErrCut ,
ADC_r_ErrMargin ,
ADC_r_ErrNotFound ,
ADC_r_ErrUnknown ,
ADC_r_ErrParNotFound ,
ADC_r_ErrNotInit ,
ADC_r_TestMode
}

switch{bbb}{
case ADC_r_Normal:
...
case ADC_r_ErrNotInit:
....
case ADC_r_TestMode:
}

так вот до 8 все нормально,а на ADC_r_TestMode(9) код лажевый генериться не ту константу в xor подставляет. Заменил на #define, все заработало. Это к случаю, чтоб отдельно не постить.
Всего, Иван.



Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru