Я работаю над проектом, в котором я использую новый стандарт C ++ 11.
Из-за этого, несколько include-заголовков из библиотеки теперь генерируют предупреждение -Wliteral-suffix
, который я бы подавил за это.
Я нашел простое решение для этого с помощью прагм, но это не работает для меня
Как подавить предупреждения GCC от заголовков библиотеки?
Это мой текущий код:
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wliteral-suffix"
#include <pylon/PylonBase.h>
#include <pylon/InstantCamera.h>
#include <pylon/TlFactory.h>
#pragma GCC diagnostic pop
Все текущие предупреждения, сгенерированные библиотекой, выглядят так:
/opt/pylon3/genicam/library/CPP/include/Base/GCException.h:272:105: warning: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wliteral-suffix]
я использую gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1)
Я думаю, что вы должны использовать только противоположное: -Wno-literal-suffix
, У меня также больше проблем с этой версией, чем со старой 4.7.2 (самая лучшая).
Если вы получаете предупреждения от система Заголовки, то вы должны включить их как таковые:
# Makefile
CPPFLAGS += -isystem/path/to/python/prefix
Рекомендации: