Revision: 985
http://svn.sourceforge.net/pygccxml/?rev=985&view=rev
Author: roman_yakovenko
Date: 2007-04-15 03:15:47 -0700 (Sun, 15 Apr 2007)
Log Message:
-----------
fixing required headers reporting
Modified Paths:
--------------
pyplusplus_dev/pyplusplus/code_creators/calldef.py
pyplusplus_dev/pyplusplus/code_creators/calldef_transformed.py
pyplusplus_dev/pyplusplus/code_creators/module.py
Modified: pyplusplus_dev/pyplusplus/code_creators/calldef.py
===================================================================
--- pyplusplus_dev/pyplusplus/code_creators/calldef.py 2007-04-15 10:10:24 UTC (rev 984)
+++ pyplusplus_dev/pyplusplus/code_creators/calldef.py 2007-04-15 10:15:47 UTC (rev 985)
@@ -180,6 +180,8 @@
if self.declaration.transformations:
ft = self.declaration.transformations[0]
files.extend( ft.required_headers() )
+ if self.declaration.call_policies:
+ files.append( self.declaration.call_policies.header_file )
return files
class free_function_t( calldef_t ):
Modified: pyplusplus_dev/pyplusplus/code_creators/calldef_transformed.py
===================================================================
--- pyplusplus_dev/pyplusplus/code_creators/calldef_transformed.py 2007-04-15 10:10:24 UTC (rev 984)
+++ pyplusplus_dev/pyplusplus/code_creators/calldef_transformed.py 2007-04-15 10:15:47 UTC (rev 985)
@@ -9,9 +9,9 @@
import calldef_utils
import class_declaration
from pygccxml import declarations
+from pyplusplus import code_repository
from calldef import calldef_t, calldef_wrapper_t
import pyplusplus.function_transformers as function_transformers
-from pyplusplus import code_repository
#TODO: constructors also can have transformation defined. We should use make _init
# function for this purpose
@@ -416,3 +416,8 @@
def _create_impl(self):
return os.linesep.join([ self.create_override(), '', self.create_default() ])
+
+ def _get_system_headers_impl( self ):
+ files = super( mem_fun_v_transformed_wrapper_t, self )._get_system_headers_impl()
+ files.append( code_repository.convenience.file_name )
+ return files
Modified: pyplusplus_dev/pyplusplus/code_creators/module.py
===================================================================
--- pyplusplus_dev/pyplusplus/code_creators/module.py 2007-04-15 10:10:24 UTC (rev 984)
+++ pyplusplus_dev/pyplusplus/code_creators/module.py 2007-04-15 10:15:47 UTC (rev 985)
@@ -27,7 +27,9 @@
def add_system_header( self, header ):
normalize = include_directories.include_directories_t.normalize
- self.__system_headers.append( normalize( header ) )
+ normalized_header = normalize( header )
+ if normalized_header not in self.__system_headers:
+ self.__system_headers.append( normalized_header )
def is_system_header( self, header ):
normalize = include_directories.include_directories_t.normalize
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|