Index: /trunk/abdev/BasicCompiler32/NumOpe.cpp
===================================================================
--- /trunk/abdev/BasicCompiler32/NumOpe.cpp	(revision 428)
+++ /trunk/abdev/BasicCompiler32/NumOpe.cpp	(revision 429)
@@ -249,7 +249,7 @@
 	char methodName[VN_SIZE], lpPtrOffset[VN_SIZE], parameter[VN_SIZE], dummy[1];
 	ReferenceKind refType;
-	bool isParameterInBracket = false;
+	PareOrBracket pareOrBracket = None;
 	lstrcpy( methodName, member );
-	GetVarFormatString( methodName, parameter, lpPtrOffset, dummy, refType, &isParameterInBracket );
+	GetVarFormatString( methodName, parameter, lpPtrOffset, dummy, refType, &pareOrBracket );
 
 	objClass.EnumDynamicMethodsOrInterfaceMethods( methodName, userProcs );
@@ -264,5 +264,5 @@
 				&& parameter[0]								// 実引数は1つ以上
 				&& pUserProc->ReturnType().IsObject()		// 戻り値がクラス型の場合
-				&& isParameterInBracket )					// 実引数は[]で囲まれている
+				&& pareOrBracket == Bracket )				// 実引数は[]で囲まれている
 			{
 				// プロパティ値として返ってきたオブジェクトインスタンスのインデクサを呼び出す
@@ -317,4 +317,16 @@
 			
 			return true;
+		}
+	}
+	else if( pareOrBracket == Pare )
+	{
+		// 関数ポインタ
+		SetError();
+
+		///////////////////////////////////////////////////////////////////
+		// メンバを検索
+		///////////////////////////////////////////////////////////////////
+		if( GetMemberType( leftType, methodName, resultType, 0, false ) ){
+			// メンバが見つかったとき
 		}
 	}
Index: /trunk/abdev/BasicCompiler_Common/VariableOpe.cpp
===================================================================
--- /trunk/abdev/BasicCompiler_Common/VariableOpe.cpp	(revision 428)
+++ /trunk/abdev/BasicCompiler_Common/VariableOpe.cpp	(revision 429)
@@ -290,5 +290,5 @@
 
 
-BOOL GetVarFormatString( char *buffer,char *array,char *array2,char *NestMember,ReferenceKind &refType, bool *pIsParameterInBracket ){
+BOOL GetVarFormatString( char *buffer,char *array,char *array2,char *NestMember,ReferenceKind &refType, PareOrBracket *pPareOrBracket ){
 	extern int cp;
 	int i,i2,i3;
@@ -318,14 +318,14 @@
 			}
 
-			if( pIsParameterInBracket )
+			if( pPareOrBracket )
 			{
 				// []なのか、()なのかを伝える
 				if( cPare_Open == '[' )
 				{
-					*pIsParameterInBracket = true;
+					*pPareOrBracket = Bracket;
 				}
 				else
 				{
-					*pIsParameterInBracket = false;
+					*pPareOrBracket = Pare;
 				}
 			}
Index: /trunk/abdev/BasicCompiler_Common/VariableOpe.h
===================================================================
--- /trunk/abdev/BasicCompiler_Common/VariableOpe.h	(revision 428)
+++ /trunk/abdev/BasicCompiler_Common/VariableOpe.h	(revision 429)
@@ -3,4 +3,11 @@
 class Type;
 class CClass;
+
+enum PareOrBracket
+{
+	None = 0,
+	Pare,			// (...)
+	Bracket,		// [...]
+};
 
 BOOL IsPtrType(int type);
@@ -16,5 +23,5 @@
 Type GetStringTypeInfo();
 void GetWithName(char *buffer);
-BOOL GetVarFormatString(char *buffer,char *array,char *array2,char *NestMember, ReferenceKind &refType, bool *pIsParameterInBracket = NULL );
+BOOL GetVarFormatString(char *buffer,char *array,char *array2,char *NestMember, ReferenceKind &refType, PareOrBracket *pPareOrBracket = NULL );
 void GetArrayElement( const char *buffer,char *variable,char *array_element);
 BOOL CheckVarNameError(char *name,int nowLine);
