Changeset 632 in dev for trunk/ab5.0/abdev/BasicCompiler_Common/src/VtblGenerator.cpp
- Timestamp:
- Jun 5, 2008, 10:04:39 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/ab5.0/abdev/BasicCompiler_Common/src/VtblGenerator.cpp
r593 r632 96 96 while( classes.Iterator_HasNext() ) 97 97 { 98 GenerateFullVTables( *classes.Iterator_GetNext() ); 98 CClass *pClass = classes.Iterator_GetNext(); 99 GenerateFullVTables( *pClass ); 100 101 // テンプレート展開されたクラスも 102 BOOST_FOREACH( ActiveBasic::Common::Lexical::ExpandedTemplateClass *pExpandedTemplateClass, pClass->expandedTemplateClasses ) 103 { 104 if( !pExpandedTemplateClass->GetClass().expandedTemplateClasses.empty() ) 105 { 106 // テンプレート展開後のクラスが更にテンプレート展開されていることはありえない 107 throw; 108 } 109 110 GenerateFullVTables( pExpandedTemplateClass->GetClass() ); 111 } 99 112 } 100 113 } … … 167 180 while( classes.Iterator_HasNext() ) 168 181 { 169 ActionVtblSchedule( *classes.Iterator_GetNext(), ImageBase, MemPos_CodeSection, MemPos_DataSection ); 182 CClass *pClass = classes.Iterator_GetNext(); 183 ActionVtblSchedule( *pClass, ImageBase, MemPos_CodeSection, MemPos_DataSection ); 184 185 // テンプレート展開されたクラスも 186 BOOST_FOREACH( ActiveBasic::Common::Lexical::ExpandedTemplateClass *pExpandedTemplateClass, pClass->expandedTemplateClasses ) 187 { 188 if( !pExpandedTemplateClass->GetClass().expandedTemplateClasses.empty() ) 189 { 190 // テンプレート展開後のクラスが更にテンプレート展開されていることはありえない 191 throw; 192 } 193 194 ActionVtblSchedule( pExpandedTemplateClass->GetClass(), ImageBase, MemPos_CodeSection, MemPos_DataSection ); 195 } 170 196 } 171 197 }
Note:
See TracChangeset
for help on using the changeset viewer.