2
0
mirror of https://github.com/boostorg/python.git synced 2026-01-26 18:52:26 +00:00

- Fixed a bug in the pure virtual functions

[SVN r19648]
This commit is contained in:
Bruno da Silva de Oliveira
2003-08-16 19:13:45 +00:00
parent 06b8320815
commit a933e458b3
4 changed files with 10 additions and 6 deletions

View File

@@ -2,6 +2,9 @@
Applied a patch by Gottfried Ganssauge that adds exception specifiers to
wrapper functions and pointer declarations. Thanks a lot Gottfried!!
Applied a patch by Prabhu Ramachandran that fixes ae problem with the
pure virtual method generation. Thanks again Prabhu!
10 August 2003
Support for incremental generation of the code has been added. This changes
how --multiple works; documentation of this new feature will follow. Thanks

View File

@@ -9,4 +9,4 @@
- Virtual operators
- Apply Gottfried patches
- args() support

View File

@@ -713,12 +713,13 @@ class _VirtualWrapperGenerator(object):
if method.abstract:
s = indent2 + 'PyErr_SetString(PyExc_RuntimeError, "pure virtual function called");\n' +\
indent2 + 'throw_error_already_set();\n'
if method.result.FullName() != 'void':
s += indent2 + 'return %s();\n' % method.result.FullName()
params = ', '.join(param_names)
s += indent2 + '%s%s(%s);\n' % \
(return_str, method.name, params)
return s
else:
else:
return indent2 + '%s%s(%s);\n' % \
(return_str, method.FullName(), ', '.join(param_names))
(return_str, method.FullName(), ', '.join(param_names))
else:
# return a call for the wrapper
params = ', '.join(['this'] + param_names)

View File

@@ -43,7 +43,7 @@ from CppParser import CppParser, CppParserError
import time
from declarations import Typedef
__VERSION__ = '0.9.13'
__VERSION__ = '0.9.14'
def RecursiveIncludes(include):
'Return a list containg the include dir and all its subdirectories'