Changeset 137 in dev for BasicCompiler64
- Timestamp:
- Jun 8, 2007, 3:11:47 AM (17 years ago)
- Location:
- BasicCompiler64
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
BasicCompiler64/BasicCompiler.vcproj
r135 r137 480 480 > 481 481 <File 482 RelativePath="..\BasicCompiler_Common\include\Member.h"483 >484 </File>485 <File486 RelativePath="..\BasicCompiler_Common\include\Method.h"487 >488 </File>489 <File490 482 RelativePath="..\BasicCompiler_Common\include\Namespace.h" 491 483 > … … 500 492 </File> 501 493 <File 502 RelativePath="..\BasicCompiler_Common\include\Prototype.h"503 >504 </File>505 <File506 494 RelativePath="..\BasicCompiler_Common\Type.h" 507 495 > … … 515 503 > 516 504 </File> 505 <Filter 506 Name="Prototype" 507 > 508 <File 509 RelativePath="..\BasicCompiler_Common\include\Member.h" 510 > 511 </File> 512 <File 513 RelativePath="..\BasicCompiler_Common\include\Method.h" 514 > 515 </File> 516 <File 517 RelativePath="..\BasicCompiler_Common\include\Prototype.h" 518 > 519 </File> 520 </Filter> 517 521 </Filter> 518 522 <Filter -
BasicCompiler64/Compile_CallProc.cpp
r135 r137 175 175 // アクセスエラーチェック 176 176 ////////////////////////////// 177 DWORD dwAccess = pMethod->dwAccess;178 177 179 178 if(ObjectName[0]){ … … 181 180 if(pobj_c==pobj_CompilingClass){ 182 181 //同一クラスオブジェクトの場合はプライベートアクセスを容認する 183 if( dwAccess==ACCESS_NON){182 if( pMethod->IsNoneAccess() ){ 184 183 SetError(109,pUserProc->GetName(),cp); 185 184 return false; … … 187 186 } 188 187 else{ 189 if( dwAccess==ACCESS_PRIVATE||190 dwAccess==ACCESS_NON){188 if( pMethod->IsPrivate() 189 || pMethod->IsNoneAccess() ){ 191 190 SetError(109,pUserProc->GetName(),cp); 192 191 return false; 193 192 } 194 if( dwAccess==ACCESS_PROTECTED){193 if( pMethod->IsProtected() ){ 195 194 SetError(110,pUserProc->GetName(),cp); 196 195 return false; … … 200 199 else{ 201 200 //クラス内部からの呼び出し(継承によるACCESS_NONのみをエラーとする) 202 if( dwAccess==ACCESS_NON){201 if( pMethod->IsNoneAccess() ){ 203 202 SetError(109,pUserProc->GetName(),cp); 204 203 return false; -
BasicCompiler64/Compile_Var.cpp
r135 r137 219 219 if(&objClass==pobj_CompilingClass){ 220 220 //同一クラスオブジェクトの場合はプライベートアクセスを容認する 221 if(pMember-> dwAccess==ACCESS_NON){221 if(pMember->IsNoneAccess()){ 222 222 if(isErrorEnabled) SetError(107,VarName,cp); 223 223 return false; … … 225 225 } 226 226 else{ 227 if((bPrivateAccess==0&&pMember-> dwAccess==ACCESS_PRIVATE)||228 pMember-> dwAccess==ACCESS_NON){227 if((bPrivateAccess==0&&pMember->IsPrivate())|| 228 pMember->IsNoneAccess()){ 229 229 if(isErrorEnabled) SetError(107,VarName,cp); 230 230 return false; 231 231 } 232 else if(bPrivateAccess==0&&pMember-> dwAccess==ACCESS_PROTECTED){232 else if(bPrivateAccess==0&&pMember->IsProtected()){ 233 233 if(isErrorEnabled) SetError(108,VarName,cp); 234 234 return false; … … 246 246 } 247 247 248 resultType = *pMember;248 resultType = pMember->GetType(); 249 249 250 250 //ポインタ変数の場合 … … 273 273 if(array[0]){ 274 274 //配列オフセット 275 if(!GetArrayOffset(pMember->SubScripts,array, *pMember)){275 if(!GetArrayOffset(pMember->SubScripts,array,pMember->GetType())){ 276 276 if(isErrorEnabled) SetError(14,member,cp); 277 277 } … … 352 352 isErrorEnabled, 353 353 isWriteAccess, 354 pMember->Get Class(),354 pMember->GetType().GetClass(), 355 355 NestMember, 356 356 pRelativeVar, … … 777 777 778 778 if(!SetInitGlobalData(offset+i3, 779 *objClass.ppobj_Member[i2],779 objClass.ppobj_Member[i2]->GetType(), 780 780 objClass.ppobj_Member[i2]->SubScripts, 781 781 temporary)) return false; … … 913 913 914 914 if(!InitLocalVar(offset+i3, 915 *objClass.ppobj_Member[i2],915 objClass.ppobj_Member[i2]->GetType(), 916 916 objClass.ppobj_Member[i2]->SubScripts, 917 917 temporary)) return false;
Note:
See TracChangeset
for help on using the changeset viewer.