swig:抑制关于函数是 python 关键字的警告

swig: suppress warning about function being python keyword

我有一个 C++ 库,我使用 swig 为它生成 Python 绑定。许多 类 有打印功能,我收到这样的警告:

Foo.h:81: Warning 314: 'print' is a python keyword, renaming to '_print'

如何抑制警告?我试过了

%ignore print;

但这并没有帮助。提前谢谢你...

我希望使用 warning filtering 语法:

%warnfilter(314) print;

可以解决问题,但在这种情况下它似乎不起作用。但是,我能够通过使用 %rename:

显式重命名自己来修复警告
%module test
%rename(_print) print;
void print();

%ignore 也适用于 SWIG 3.0。最好猜测您的指令和声明的顺序错误,例如:

%module test
%ignore print;
void print();

3.0.2 不发出警告