Changeset 561 in dev for trunk/ab5.0/abdev/BasicCompiler_Common/src/LexicalAnalyzer_Class.cpp
- Timestamp:
- May 5, 2008, 1:09:21 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/ab5.0/abdev/BasicCompiler_Common/src/LexicalAnalyzer_Class.cpp
r560 r561 224 224 225 225 bool result = true; 226 BOOST_FOREACH( CMember *pMember, objClass.GetDynamicMembers() ){226 BOOST_FOREACH( Member *pMember, objClass.GetDynamicMembers() ){ 227 227 if(pMember->GetType().IsStruct()){ 228 228 //循環参照でないかをチェック … … 268 268 } 269 269 270 Member *LexicalAnalyzer::CreateMember( const CClass &_class, Prototype::Accessibility accessibility, bool isConst, bool isRef, char *buffer, int nowLine ) 271 { 272 extern int cp; 273 274 //構文を解析 275 char VarName[VN_SIZE]; 276 char initBuffer[VN_SIZE]; 277 char lpszConstructParameter[VN_SIZE]; 278 Subscripts subscripts; 279 Type type; 280 GetDimentionFormat(buffer,VarName,subscripts,type,initBuffer,lpszConstructParameter); 281 282 //重複チェック 283 if( _class.DupliCheckAll( VarName ) ){ 284 compiler.errorMessenger.Output(15,VarName,cp); 285 } 286 287 Member *pMember = new Member( accessibility, VarName, type, isConst, subscripts, initBuffer, lpszConstructParameter ); 288 pMember->source_code_address = nowLine; 289 return pMember; 290 } 291 270 292 void LexicalAnalyzer::AddMethod(CClass *pobj_c, UserProc *pUserProc, Prototype::Accessibility accessibility, BOOL bStatic, bool isConst, bool isAbstract, 271 293 bool isVirtual, bool isOverride, const char *interfaceName, bool isAutoGeneration, int nowLine) … … 1160 1182 //静的メンバを追加 1161 1183 cp=i; //エラー用 1162 pobj_c->AddStaticMember( accessibility, isConst, false, temporary, i); 1184 pobj_c->AddStaticMember( 1185 LexicalAnalyzer::CreateMember( *pobj_c, accessibility, isConst, false, temporary, i ) 1186 ); 1163 1187 } 1164 1188 else{ 1165 1189 //メンバを追加 1166 1190 cp=i; //エラー用 1167 pobj_c->AddMember( accessibility, isConst, false, temporary, i ); 1191 pobj_c->AddDynamicMember( 1192 LexicalAnalyzer::CreateMember( *pobj_c, accessibility, isConst, false, temporary, i ) 1193 ); 1168 1194 1169 1195
Note:
See TracChangeset
for help on using the changeset viewer.