aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--find-modules/sip_generator.py7
-rw-r--r--tests/GenerateSipBindings/cpplib.h6
-rw-r--r--tests/GenerateSipBindings/testscript.py5
3 files changed, 17 insertions, 1 deletions
diff --git a/find-modules/sip_generator.py b/find-modules/sip_generator.py
index 5311e8c5..55220e2f 100644
--- a/find-modules/sip_generator.py
+++ b/find-modules/sip_generator.py
@@ -256,7 +256,12 @@ class SipGenerator(object):
#
pass
else:
- SipGenerator._report_ignoring(container, member)
+ text = self._read_source(member.extent)
+ if self.skippable_attribute(container, member, text, sip):
+ if not sip["name"]:
+ return ""
+ else:
+ SipGenerator._report_ignoring(container, member)
def is_copy_constructor(member):
if member.kind != CursorKind.CONSTRUCTOR:
diff --git a/tests/GenerateSipBindings/cpplib.h b/tests/GenerateSipBindings/cpplib.h
index b3ea22a8..958b8750 100644
--- a/tests/GenerateSipBindings/cpplib.h
+++ b/tests/GenerateSipBindings/cpplib.h
@@ -213,3 +213,9 @@ public:
EXPORT int visible_fn() { return 1; }
NO_EXPORT int invisible_fn() { return 1; }
};
+
+class NO_EXPORT Invisible
+{
+public:
+ int someApi() { return 1; }
+};
diff --git a/tests/GenerateSipBindings/testscript.py b/tests/GenerateSipBindings/testscript.py
index 98443d53..b388841f 100644
--- a/tests/GenerateSipBindings/testscript.py
+++ b/tests/GenerateSipBindings/testscript.py
@@ -130,3 +130,8 @@ try:
assert False
except AttributeError as e:
assert str(e) == "'Visible' object has no attribute 'invisible_fn'"
+try:
+ invisible = PyTest.CppLib.Invisible()
+ assert False
+except AttributeError as e:
+ assert str(e) == "module 'PyTest.CppLib' has no attribute 'Invisible'"