Прагма компилятора SunStudio C ++ для отключения предупреждений? - PullRequest
3 голосов
/ 11 февраля 2009

STLport в комплекте с SunStudio11 выдает много предупреждений. Я полагаю, что большинство компиляторов имеют способ отключить предупреждения от определенных исходных файлов, например:

вс C

#pragma error_messages off

#include <header.h>
// ...

#pragma error_messages on

НКУ

#pragma warning(push, 0)        

#include <header.h>
// ...

#pragma warning(pop)

Как вы это делаете в компиляторе SunStudio C ++? (кстати, прагмы sunstudio C не работают в sunstudio C ++)

Ответы [ 4 ]

6 голосов
/ 22 апреля 2009

В SunStudio 12 #pragma error_messages работает, как описано в руководстве пользователя C.

Вы можете увидеть теги с опцией -errtags = yes и использовать их следующим образом:

// Disable badargtypel2w:
//     String literal converted to char* in formal argument
#pragma error_messages (off, badargtypel2w )

, а затем скомпилировать с помощью CC (компилятор C ++).

1 голос
/ 10 июля 2009

Если вы предпочитаете использовать параметр командной строки, а не #pragmas, простой ответ заключается в том, что вы можете использовать -erroff=%all on your compile line.

Вы можете подавить определенные предупреждающие сообщения с помощью -erroff =% tag

Вы можете распечатать теги для предупреждающих сообщений, добавив -errtags в строку компиляции. Затем вы можете определить набор разделенных запятыми значений для -erroff, которые подавляют только эти теги.

Подробнее см. http://docs.oracle.com/cd/E19205-01/820-7599/bkapa/index.html.

Обратите внимание, что теперь доступно обновление 1 для Sun Studio 12, и я ссылаюсь на документ SS12u1 здесь.

0 голосов
/ 16 сентября 2009

добавьте -w к вашей $ CC или любой другой переменной, которую вы используете.

0 голосов
/ 11 февраля 2009

Не могу помочь с отключением предупреждений, но когда я в последний раз смотрел на SunStudio, он поставлялся с двумя STL - старым для обратной совместимости с более ранними версиями компилятора и STLport. Возможно, стоит проверить, используете ли вы STLport, прежде чем пытаться отключить предупреждения.

...