From: Marcelo M. <mar...@us...> - 2005-09-11 18:20:21
|
Update of /cvsroot/swig/SWIG/Source/CParse In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv16637/Source/CParse Modified Files: parser.y Log Message: fix incomplete module name replacement when using the -module flag #1282637 Index: parser.y =================================================================== RCS file: /cvsroot/swig/SWIG/Source/CParse/parser.y,v retrieving revision 1.114 retrieving revision 1.115 diff -C2 -d -r1.114 -r1.115 *** parser.y 11 Sep 2005 17:53:20 -0000 1.114 --- parser.y 11 Sep 2005 18:20:13 -0000 1.115 *************** *** 167,170 **** --- 167,175 ---- #define CPLUS_PROTECTED 3 + /* include types */ + static int include_type = 0; + #define INCLUDE_MODE 1 + #define IMPORT_MODE 2 + void SWIG_typemap_lang(const char *tm_lang) { typemap_lang = Swig_copy_string(tm_lang); *************** *** 1767,1772 **** ; ! includetype : INCLUDE { $$.type = (char *) "include"; } ! | IMPORT { $$.type = (char *) "import"; } ; --- 1772,1777 ---- ; ! includetype : INCLUDE { $$.type = (char *) "include"; include_type = INCLUDE_MODE;} ! | IMPORT { $$.type = (char *) "import"; include_type = IMPORT_MODE;} ; *************** *** 1873,1877 **** } if (!ModuleName) ModuleName = NewString($3); ! Setattr($$,"name",ModuleName); if (!module_node) module_node = $$; } --- 1878,1889 ---- } if (!ModuleName) ModuleName = NewString($3); ! if (include_type == INCLUDE_MODE) { ! /* first module included, we apply global ! ModuleName, which can be modify by -module */ ! Setattr($$,"name",Copy(ModuleName)); ! } else { ! /* import mode, we just pass the idstring */ ! Setattr($$,"name",$3); ! } if (!module_node) module_node = $$; } |