[pygccxml-commit] SF.net SVN: pygccxml: [804] pyplusplus_dev
Brought to you by:
mbaas,
roman_yakovenko
From: <rom...@us...> - 2006-12-18 08:36:14
|
Revision: 804 http://svn.sourceforge.net/pygccxml/?rev=804&view=rev Author: roman_yakovenko Date: 2006-12-18 00:36:12 -0800 (Mon, 18 Dec 2006) Log Message: ----------- fixing "const" bug Modified Paths: -------------- pyplusplus_dev/pyplusplus/code_creators/calldef_transformed.py pyplusplus_dev/pyplusplus/function_transformers/templates.py pyplusplus_dev/unittests/data/function_transformations_to_be_exported.hpp Modified: pyplusplus_dev/pyplusplus/code_creators/calldef_transformed.py =================================================================== --- pyplusplus_dev/pyplusplus/code_creators/calldef_transformed.py 2006-12-17 19:57:49 UTC (rev 803) +++ pyplusplus_dev/pyplusplus/code_creators/calldef_transformed.py 2006-12-18 08:36:12 UTC (rev 804) @@ -333,7 +333,10 @@ tmpl_values['wrapper_class'] = self.parent.wrapper_alias tmpl_values['wrapped_class'] = declarations.full_name( self.declaration.parent ) tmpl_values['wrapped_inst'] = cntrl.inst_arg.name - + tmpl_values['wrapped_inst_constness'] = '' + if declarations.is_const( declarations.remove_reference( cntrl.inst_arg.type ) ): + tmpl_values['wrapped_inst_constness'] = 'const' + decl_vars = cntrl.variables[:] if not declarations.is_void( self.declaration.return_type ): decl_vars.append( cntrl.result_variable ) Modified: pyplusplus_dev/pyplusplus/function_transformers/templates.py =================================================================== --- pyplusplus_dev/pyplusplus/function_transformers/templates.py 2006-12-17 19:57:49 UTC (rev 803) +++ pyplusplus_dev/pyplusplus/function_transformers/templates.py 2006-12-18 08:36:12 UTC (rev 804) @@ -43,7 +43,7 @@ 'static $return_type $unique_function_name( $arg_declarations ){' , ' $declare_variables' , ' $pre_call' - , ' if( dynamic_cast< $wrapper_class* >( boost::addressof( $wrapped_inst ) ) ){' + , ' if( dynamic_cast< $wrapper_class $wrapped_inst_constness* >( boost::addressof( $wrapped_inst ) ) ){' , ' $save_result$wrapped_inst.$wrapped_class::$function_name($arg_expressions);' , ' }' , ' else{' Modified: pyplusplus_dev/unittests/data/function_transformations_to_be_exported.hpp =================================================================== --- pyplusplus_dev/unittests/data/function_transformations_to_be_exported.hpp 2006-12-17 19:57:49 UTC (rev 803) +++ pyplusplus_dev/unittests/data/function_transformations_to_be_exported.hpp 2006-12-18 08:36:12 UTC (rev 804) @@ -184,7 +184,7 @@ }; struct bug_render_target_t{ - virtual void get_statistics( float& x, float& y ){ + virtual void get_statistics( float& x, float& y ) const{ x = 1.1;; y = 1.2; } @@ -197,6 +197,7 @@ frame_stats_t fs; fs.x = 1.1; fs.y = 1.2; + return fs; } }; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |