компиляция меняет код?

egoregor

возможно наивный вопрос, но я не пойму, почему при компиляции некоторые части кодов комментируются?
Это приводит к ошибкам типа
"error An ENDDO statement occurred without a corresponding DO or DO WHILE statement"
смотрю в код, а там DO закомментен. Как избежать этого? Компилятор интел 11.1.
следует отметить, что не просто компиляция, а make, т.е., может дело в шел скриптах

Serab

В смысле? Прямо в исходном файле комментирует?

egoregor

да :crazy:

Maurog

покажите код (желательно минимальный, на котором проявляется проблема какой язык? расскажите какой командой вы его компилируете и тд. телепатические возможности к вечеру на нуле :(

egoregor

 
телепатические возможности к вечеру на нуле :(

как я вас понимаю ..)
там на самом деле много кодов, вот пример, исходно кусок такой:
c#ifdef _MOLCAS_
c; Lu_file=isfreeunit(8)
c; Do ivv=1,2
c#else
     Lu_file=48
     Do ivv=1,1
после make, получается
c#ifdef _MOLCAS_
c; Lu_file=isfreeunit(8)
c; Do ivv=1,2
c#else
c; Lu_file=48
c; Do ivv=1,1
язык фортран
дело происходит на линуксе.
у меня предположение, что там проблема в shell скриптах запускающих компиляцию...

egoregor

не знаю пока почему, но после генерации конфиг файла с ключами -i686 -i4 -ifort, запустил мейк и все пошло нормально - коды остались не тронутыми.
Оставить комментарий
Имя или ник:
Комментарий: