Changeset 640 in dev for trunk/ab5.0/abdev/ab_common/src/Lexical/Procedure.cpp
- Timestamp:
- Jun 14, 2008, 12:16:27 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/ab5.0/abdev/ab_common/src/Lexical/Procedure.cpp
r639 r640 12 12 } 13 13 14 bool Procedure::Resolve( const ObjectModule &resolver )14 bool Procedure::Resolve( const ObjectModule &resolver, ResolveErrors &resolveErrors ) 15 15 { 16 16 BOOST_FOREACH( Parameter *pParameter, params ) 17 17 { 18 pParameter->Resolve( resolver );19 } 20 21 returnType.Resolve( resolver );18 pParameter->Resolve( resolver, resolveErrors ); 19 } 20 21 returnType.Resolve( resolver, resolveErrors ); 22 22 23 23 return true; … … 170 170 } 171 171 172 bool UserProc::Resolve( const ObjectModule &resolver ) 173 { 174 Procedure::Resolve( resolver ); 175 176 if( pParentClass ) 177 { 178 if( pParentClass->IsNeedResolve() ) 179 { 180 pParentClass = resolver.meta.GetClasses().FindLike( pParentClass ); 172 bool UserProc::Resolve( const ObjectModule &resolver, ResolveErrors &resolveErrors ) 173 { 174 Procedure::Resolve( resolver, resolveErrors ); 175 176 if( this->pParentClass ) 177 { 178 if( this->pParentClass->IsNeedResolve() ) 179 { 180 const CClass *pTempClass = resolver.meta.GetClasses().FindLike( this->pParentClass ); 181 if( pTempClass ) 182 { 183 this->pParentClass = pTempClass; 184 } 185 else 186 { 187 resolveErrors.Add( ResolveError( this->pParentClass->GetRelationalObjectModuleIndex(), this->pParentClass->GetFullName() ) ); 188 } 181 189 } 182 190 } … … 184 192 if( pInterface ) 185 193 { 186 const_cast<Interface *>(pInterface)->Resolve( resolver );194 const_cast<Interface *>(pInterface)->Resolve( resolver, resolveErrors ); 187 195 } 188 196 189 197 if( pMethod ) 190 198 { 191 pMethod->Resolve( resolver );199 pMethod->Resolve( resolver, resolveErrors ); 192 200 } 193 201 194 202 BOOST_FOREACH( Parameter *pParameter, realParams ) 195 203 { 196 pParameter->Resolve( resolver );204 pParameter->Resolve( resolver, resolveErrors ); 197 205 } 198 206 199 207 BOOST_FOREACH( Variable *pLocalVar, localVars ) 200 208 { 201 pLocalVar->Resolve( resolver );202 } 203 204 nativeCode.Resolve( resolver );209 pLocalVar->Resolve( resolver, resolveErrors ); 210 } 211 212 nativeCode.Resolve( resolver, resolveErrors ); 205 213 return true; 206 214 } … … 228 236 } 229 237 230 bool DllProc::Resolve( const ObjectModule &resolver )231 { 232 Procedure::Resolve( resolver );233 return true; 234 } 235 236 bool ProcPointer::Resolve( const ObjectModule &resolver )237 { 238 Procedure::Resolve( resolver );238 bool DllProc::Resolve( const ObjectModule &resolver, ResolveErrors &resolveErrors ) 239 { 240 Procedure::Resolve( resolver, resolveErrors ); 241 return true; 242 } 243 244 bool ProcPointer::Resolve( const ObjectModule &resolver, ResolveErrors &resolveErrors ) 245 { 246 Procedure::Resolve( resolver, resolveErrors ); 239 247 return true; 240 248 }
Note:
See TracChangeset
for help on using the changeset viewer.