[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.
|