Index: trunk/abdev/BasicCompiler_Common/BasicCompiler.h
===================================================================
--- trunk/abdev/BasicCompiler_Common/BasicCompiler.h	(revision 331)
+++ trunk/abdev/BasicCompiler_Common/BasicCompiler.h	(revision 332)
@@ -61,4 +61,8 @@
 
 
+//デリゲートのベース タイプ インデックス（コンストラクトされるデリゲートのパラメータを参考に、オーバーロードを解決）
+const Delegate *pConstructingDelegate;
+
+
 int cp;
 
Index: trunk/abdev/BasicCompiler_Common/Intermediate_Step1.cpp
===================================================================
--- trunk/abdev/BasicCompiler_Common/Intermediate_Step1.cpp	(revision 331)
+++ trunk/abdev/BasicCompiler_Common/Intermediate_Step1.cpp	(revision 332)
@@ -8,5 +8,30 @@
 #include "../BasicCompiler_Common/common.h"
 
-void ChangeReturnCode(char *buffer){
+void ChangeReturnCode(char *buffer)
+{
+	int i;
+
+	bool isMustChange = false;
+	for( i=0; ; i++ ){
+		if( buffer[i] == '\0' ){
+			break;
+		}
+		if( buffer[i]=='\n' )
+		{
+			if( i>0 )
+			{
+				if( buffer[i-1] == '\r' )
+				{
+					isMustChange = true;
+				}
+			}
+		}
+	}
+
+	if( !isMustChange )
+	{
+		// 改行コードの変換は必要ない
+		return;
+	}
 
 #ifdef _DEBUG
Index: trunk/abdev/BasicCompiler_Common/Subroutine.cpp
===================================================================
--- trunk/abdev/BasicCompiler_Common/Subroutine.cpp	(revision 331)
+++ trunk/abdev/BasicCompiler_Common/Subroutine.cpp	(revision 332)
@@ -77,5 +77,5 @@
 	}
 
-	if( type.IsObject() && type.GetClass().IsDelegate() )
+	if( type.IsDelegate() )
 	{
 		// デリゲート
Index: trunk/abdev/BasicCompiler_Common/include/Type.h
===================================================================
--- trunk/abdev/BasicCompiler_Common/include/Type.h	(revision 331)
+++ trunk/abdev/BasicCompiler_Common/include/Type.h	(revision 332)
@@ -188,4 +188,5 @@
 	bool IsVoidPtr() const;
 	bool IsAny() const;
+	bool IsDelegate() const;
 
 	// オブジェクトや構造体など、メンバを持つ型かどうかを判別する
Index: trunk/abdev/BasicCompiler_Common/src/Type.cpp
===================================================================
--- trunk/abdev/BasicCompiler_Common/src/Type.cpp	(revision 331)
+++ trunk/abdev/BasicCompiler_Common/src/Type.cpp	(revision 332)
@@ -442,4 +442,9 @@
 	}
 	return false;
+}
+
+bool Type::IsDelegate() const
+{
+	return ( IsObject() && GetClass().IsDelegate() );
 }
 
