diff options
author | Stephen Kelly <steveire@gmail.com> | 2017-01-18 23:03:16 +0000 |
---|---|---|
committer | Stephen Kelly <steveire@gmail.com> | 2017-01-18 23:03:16 +0000 |
commit | ded67db971a2d185dc999255942141e54b44c478 (patch) | |
tree | 6fe8f0be7d9ddea57c2acc9585051274222e4ec6 /find-modules | |
parent | c7940ff6b0c482b78d7a96db740e21488ce9587f (diff) | |
download | extra-cmake-modules-ded67db971a2d185dc999255942141e54b44c478.tar.gz extra-cmake-modules-ded67db971a2d185dc999255942141e54b44c478.tar.bz2 |
Bindings: Handle const-ref of non-record parameter defaults
Diffstat (limited to 'find-modules')
-rw-r--r-- | find-modules/sip_generator.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/find-modules/sip_generator.py b/find-modules/sip_generator.py index 35f6667d..7804b3ae 100644 --- a/find-modules/sip_generator.py +++ b/find-modules/sip_generator.py @@ -579,7 +579,9 @@ class SipGenerator(object): result = parameter.type.get_declaration().type if parameter.type.kind == TypeKind.LVALUEREFERENCE: - return parameter.type.get_pointee().get_declaration().type + if parameter.type.get_pointee().get_declaration().type.kind != TypeKind.INVALID: + return parameter.type.get_pointee().get_declaration().type + return parameter.type.get_pointee() if parameter.type.get_declaration().type.kind == TypeKind.INVALID: return parameter.type @@ -603,6 +605,8 @@ class SipGenerator(object): return "0" if parameterType.kind == TypeKind.POINTER: return "nullptr" + if parameterType.spelling.startswith("const "): + return parameterType.spelling[6:] + "()" return parameterType.spelling + "()" if not "::" in parameterType.spelling: return text |