Index: trunk/ab5.0/abdev/BasicCompiler_Common/NumOpe_GetType.cpp
===================================================================
--- trunk/ab5.0/abdev/BasicCompiler_Common/NumOpe_GetType.cpp	(revision 637)
+++ trunk/ab5.0/abdev/BasicCompiler_Common/NumOpe_GetType.cpp	(revision 638)
@@ -193,5 +193,11 @@
 }
 
-int GetReturnType_OperatorProc(int idCalc,const Type &baseType,int *type_stack,LONG_PTR *index_stack,int &sp){
+int GetReturnType_OperatorProc(int idCalc,const Type &baseType,int *type_stack,LONG_PTR *index_stack,int &sp)
+{
+	if( sp < 2 )
+	{
+		Jenga::Throw( "GetReturnType_OperatorProcのspが2以下" );
+	}
+
 	Type leftType( type_stack[sp-2], index_stack[sp-2] );
 	Type rightType( type_stack[sp-1] & (~FLAG_CAST), index_stack[sp-1] );
@@ -708,5 +714,5 @@
 		idCalc=calc[i]%100;
 
-		if(idCalc){
+		if(idCalc && sp >= 2){
 			if(type_stack[sp-2]==DEF_OBJECT){
 				if( idCalc == CALC_AS
