Changeset 350 in dev for trunk/abdev/BasicCompiler32/Compile_ProcOp.cpp
- Timestamp:
- Oct 14, 2007, 9:41:03 PM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/abdev/BasicCompiler32/Compile_ProcOp.cpp
r331 r350 258 258 UserProc::CompileStartForUserProc( pBackUserProc ); 259 259 cp=BackCp; 260 } 261 else if( userProc.HasParentClass() 262 && userProc.IsCastOperator() 263 && userProc.ReturnType().IsInterface() ) 264 { 265 // インターフェイス型にキャストするためのメソッド 266 267 int vtblMasterListIndex = userProc.GetParentClass().GetVtblMasterListIndex( &userProc.ReturnType().GetClass() ); 268 269 char temporary[1024]; 270 sprintf( temporary, 271 "Return New %s(ObjPtr( This ),Get_LONG_PTR( (Get_LONG_PTR( ObjPtr(This) ) + SizeOf(LONG_PTR)*%d) As VoidPtr ) As VoidPtr )", 272 userProc.ReturnType().GetClass().GetName().c_str(), 273 vtblMasterListIndex 274 ); 275 MakeMiddleCode( temporary ); 276 277 ChangeOpcode( temporary ); 260 278 } 261 279 else{
Note:
See TracChangeset
for help on using the changeset viewer.