Предупреждение о неизвестном атрибуте `extern_c` в C++

Я создаю игру Cocos2d-x для Android на Mac, используя Android NDK, и получаю много подобных предупреждений при компиляции части C++:

/usr/include/module.map:1662:22: warning: unknown attribute 'extern_c' [-Wignored-attributes]

Это опасно? Как я могу это исправить?


person DavidGuaita    schedule 10.12.2015    source источник
comment
Похоже на stackoverflow.com/a/29702983/5333147   -  person tiny sunlight    schedule 30.01.2016
comment
Мы не видим никакого кода. Трудно сказать, как это исправить. :-)   -  person Palec    schedule 02.02.2016
comment
Вероятно, отсутствует определение extern_c macro или что-то в этом роде.   -  person Palec    schedule 02.02.2016


Ответы (1)


Я предполагаю, что extern_c - это директива компилятора для карты модулей, в которой говорится, что это ссылки на функции из C++, которые были написаны на языке C (другая структура кадра вызова).

Часть LLVM компилятора CLANG, вероятно, имеет несоответствие версии. http://clang.llvm.org/docs/Modules.html#module-maps

Попробуйте командную строку $ clang -v

Возможно, вам придется проверить версию библиотеки компилятора xcode->preferences->locations->tools командной строки.

В конечном итоге вы захотите прояснить это, чтобы ваши кадры стека соответствовали аргументам и чтобы вы не ссылались на функцию языка C.

person bobwilmes    schedule 02.02.2016