Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitmodules3
-rw-r--r--acceptance-tests/Makefile.am2
-rw-r--r--acceptance-tests/ms-test-suite.mk4
-rw-r--r--configure.ac7
m---------external/roslyn-binaries0
-rw-r--r--mcs/Makefile8
-rw-r--r--mcs/build/config-default.make5
-rw-r--r--mcs/build/executable.make10
-rw-r--r--mcs/build/library.make8
-rw-r--r--mcs/build/platforms/darwin.make1
-rw-r--r--mcs/build/platforms/linux.make1
-rw-r--r--mcs/build/platforms/win32.make3
-rw-r--r--mcs/build/profiles/aot_hybrid.make4
-rw-r--r--mcs/build/profiles/aot_only.make4
-rw-r--r--mcs/build/profiles/basic.make32
-rw-r--r--mcs/build/profiles/build.make7
-rw-r--r--mcs/build/profiles/monodroid.make4
-rw-r--r--mcs/build/profiles/monotouch_runtime.make4
-rw-r--r--mcs/build/profiles/net_4_x.make6
-rw-r--r--mcs/build/profiles/xammac.make4
-rw-r--r--mcs/build/rules.make3
-rw-r--r--mcs/class/Facades/subdirs.make4
-rw-r--r--mcs/class/Makefile30
-rw-r--r--mcs/class/Microsoft.Build.Engine/Makefile3
-rw-r--r--mcs/class/Microsoft.Build.Tasks/Microsoft.Build.Tasks/Csc.cs2
-rw-r--r--mcs/class/Mono.Debugger.Soft/Test/dtest.cs6
-rw-r--r--mcs/class/System/Microsoft.CSharp/CSharpCodeCompiler.cs8
-rwxr-xr-xmcs/class/System/System/MonoToolsLocator.cs13
-rw-r--r--mcs/class/System/basic_System.dll.sources2
-rw-r--r--mcs/class/aot-compiler/Makefile34
-rw-r--r--mcs/class/corlib/Makefile4
-rw-r--r--mcs/class/monodoc/Assembly/AssemblyInfo.cs2
-rw-r--r--mcs/class/monodoc/Makefile3
-rw-r--r--mcs/errors/CS0029-26-lib.cs1
-rw-r--r--mcs/errors/CSFriendAssembly-lib.cs1
-rw-r--r--mcs/errors/Makefile23
-rw-r--r--mcs/errors/dlls/first/CS1701-lib.cs1
-rw-r--r--mcs/errors/dlls/first/CS1702-lib.cs1
-rw-r--r--mcs/errors/dlls/first/CS1703-lib.cs1
-rw-r--r--mcs/errors/dlls/first/CS1705-lib.cs1
-rw-r--r--mcs/errors/dlls/second/CS1701-lib.cs1
-rw-r--r--mcs/errors/dlls/second/CS1702-lib.cs1
-rw-r--r--mcs/errors/dlls/second/CS1703-lib.cs1
-rw-r--r--mcs/errors/dlls/second/CS1705-lib.cs1
-rw-r--r--mcs/mcs/Makefile21
-rw-r--r--mcs/nunit24/ClientUtilities/util/Makefile2
-rw-r--r--mcs/nunit24/ConsoleRunner/nunit-console/Makefile2
-rw-r--r--mcs/nunit24/NUnitCore/core/Makefile2
-rw-r--r--mcs/nunit24/NUnitCore/interfaces/Makefile2
-rw-r--r--mcs/nunit24/NUnitExtensions/core/Makefile2
-rw-r--r--mcs/nunit24/NUnitExtensions/framework/Makefile2
-rw-r--r--mcs/nunit24/NUnitFramework/framework/Makefile2
-rw-r--r--mcs/nunit24/NUnitMocks/mocks/Makefile2
-rw-r--r--mcs/packages/.gitignore1
-rw-r--r--mcs/packages/Makefile25
-rw-r--r--mcs/tests/Makefile16
-rw-r--r--mcs/tools/cil-stringreplacer/cil-stringreplacer.cs31
-rw-r--r--mcs/tools/mdoc/Test/en.expected-dropns-classic-v1/index.xml6
-rw-r--r--mcs/tools/mdoc/Test/en.expected-dropns-classic-withsecondary/index.xml9
-rw-r--r--mcs/tools/mdoc/Test/en.expected-dropns-delete/index.xml6
-rw-r--r--mcs/tools/mdoc/Test/en.expected-dropns-multi-withexisting/index.xml12
-rw-r--r--mcs/tools/mdoc/Test/en.expected-dropns-multi/index.xml12
-rw-r--r--mcs/tools/mdoc/Test/en.expected-enumerations/index.xml3
-rw-r--r--mcs/tools/mdoc/Test/en.expected-internal-interface/index.xml3
-rw-r--r--mcs/tools/mdoc/Test/en.expected.delete/Mono.DocTest.Generic/Extensions.xml5
-rw-r--r--mcs/tools/mdoc/Test/en.expected.delete/Mono.DocTest.Generic/MyList`1+Helper`2.xml8
-rw-r--r--mcs/tools/mdoc/Test/en.expected.delete/index.xml3
-rw-r--r--mcs/tools/mdoc/Test/en.expected.importecmadoc/index.xml3
-rw-r--r--mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest.Generic/Extensions.xml11
-rw-r--r--mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1+Helper`2.xml8
-rw-r--r--mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/Color.xml4
-rw-r--r--mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml4
-rw-r--r--mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/Widget.xml16
-rw-r--r--mcs/tools/mdoc/Test/en.expected.importslashdoc/System/Environment.xml4
-rw-r--r--mcs/tools/mdoc/Test/en.expected.importslashdoc/index.xml9
-rw-r--r--mcs/tools/mdoc/Test/en.expected.since/Mono.DocTest.Generic/Extensions.xml5
-rw-r--r--mcs/tools/mdoc/Test/en.expected.since/Mono.DocTest.Generic/MyList`1+Helper`2.xml8
-rw-r--r--mcs/tools/mdoc/Test/en.expected.since/index.xml3
-rw-r--r--mcs/tools/mdoc/Test/en.expected/Mono.DocTest.Generic/Extensions.xml5
-rw-r--r--mcs/tools/mdoc/Test/en.expected/Mono.DocTest.Generic/MyList`1+Helper`2.xml8
-rw-r--r--mcs/tools/mdoc/Test/en.expected/index.xml3
-rw-r--r--mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/Extensions.html14
-rw-r--r--mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/IFoo`1.html2
-rw-r--r--mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html2
-rw-r--r--mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`1.html4
-rw-r--r--mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`2.html6
-rw-r--r--mcs/tools/mdoc/Test/html.expected/Mono.DocTest/Color.html4
-rw-r--r--mcs/tools/mdoc/Test/html.expected/Mono.DocTest/DocAttribute.html4
-rw-r--r--mcs/tools/mdoc/Test/html.expected/Mono.DocTest/Widget.html8
-rw-r--r--mcs/tools/mdoc/Test/html.expected/System/Environment.html4
-rw-r--r--mcs/tools/mdoc/Test/msxdoc-expected.importslashdoc.xml36
-rw-r--r--mcs/tools/mono-service/Makefile2
-rw-r--r--mcs/tools/mono-symbolicate/Test/symbolicate.expected60
-rw-r--r--mcs/tools/nunit-lite/NUnitLite/Makefile2
-rw-r--r--mono/metadata/icall.c4
-rwxr-xr-xmono/mini/Makefile.am.in1
-rw-r--r--mono/profiler/Makefile.am2
-rw-r--r--mono/tests/Makefile.am2
-rw-r--r--mono/tests/assemblyresolve/Makefile.am2
-rw-r--r--runtime/Makefile.am6
-rw-r--r--scripts/.gitignore2
-rw-r--r--scripts/Makefile.am6
-rw-r--r--scripts/csc.in2
103 files changed, 466 insertions, 241 deletions
diff --git a/.gitmodules b/.gitmodules
index 20d831d7e4a..3dc4e8c19e3 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -52,3 +52,6 @@
[submodule "external/linker"]
path = external/linker
url = git://github.com/mono/linker.git
+[submodule "external/roslyn-binaries"]
+ path = external/roslyn-binaries
+ url = git://github.com/mono/roslyn-binaries.git
diff --git a/acceptance-tests/Makefile.am b/acceptance-tests/Makefile.am
index c03adcc0c45..6f4f2080ebf 100644
--- a/acceptance-tests/Makefile.am
+++ b/acceptance-tests/Makefile.am
@@ -11,7 +11,7 @@ CLASS=$(mcs_topdir)/class/lib/$(DEFAULT_PROFILE)
with_mono_path = MONO_PATH=$(CLASS)
RUNTIME = $(with_mono_path) $(abs_top_builddir)/runtime/mono-wrapper --debug
-MCS = $(RUNTIME) $(mcs_topdir)/class/lib/build/mcs.exe
+MCS = $(RUNTIME) $(CSC) -nologo
ILASM = $(RUNTIME) $(CLASS)/ilasm.exe
include versions.mk
diff --git a/acceptance-tests/ms-test-suite.mk b/acceptance-tests/ms-test-suite.mk
index 1516dc61db6..7ed072e797d 100644
--- a/acceptance-tests/ms-test-suite.mk
+++ b/acceptance-tests/ms-test-suite.mk
@@ -1,8 +1,8 @@
check-ms-test-suite: $(CLASS)/nunitlite.dll
@if $(MAKE) validate-ms-test-suite RESET_VERSIONS=1; then \
- $(MAKE) -C $(MSTESTSUITE_PATH)/conformance build MCS="$(MCS) -debug -t:library -warn:1 -r:$(CLASS)/nunitlite.dll" && \
+ $(MAKE) -C $(MSTESTSUITE_PATH)/conformance build MCS="$(MCS) -debug:portable -t:library -warn:1 -r:$(CLASS)/nunitlite.dll" && \
$(MAKE) -C $(MSTESTSUITE_PATH)/conformance run NUNIT-CONSOLE="$(RUNTIME) $(CLASS)/nunit-lite-console.exe -exclude=MonoBug,BadTest -format:nunit2" NUNIT_XML_RESULT="-result:$(abs_top_builddir)/acceptance-tests/TestResult-ms-test-suite-conformance.xml" || EXIT_CODE=1; \
- $(MAKE) -C $(MSTESTSUITE_PATH)/systemruntimebringup build MCS="$(MCS) -debug -warn:1" && \
+ $(MAKE) -C $(MSTESTSUITE_PATH)/systemruntimebringup build MCS="$(MCS) -debug:portable -warn:1" && \
$(MAKE) -C $(MSTESTSUITE_PATH)/systemruntimebringup run MONO="$(RUNTIME)" || EXIT_CODE=1; \
exit $$EXIT_CODE; \
else \
diff --git a/configure.ac b/configure.ac
index 26c1e950d67..3319ae33b40 100644
--- a/configure.ac
+++ b/configure.ac
@@ -4050,10 +4050,13 @@ AC_SUBST(mono_build_root)
mono_runtime=mono/mini/mono
AC_SUBST(mono_runtime)
+CSC=$mono_build_root/external/roslyn-binaries/Microsoft.Net.Compilers/Microsoft.Net.Compilers.1.3.2/tools/csc.exe
+
mono_cfg_root=$mono_build_root/runtime
if test x$host_win32 = xyes; then
if test "x$cross_compiling" = "xno"; then
mono_cfg_dir=`cygpath -w -a $mono_cfg_root`\\etc
+ CSC="'"`cygpath -w -a $CSC`"'"
else
mono_cfg_dir=`echo $mono_cfg_root | tr '/' '\\'`\\etc
fi
@@ -4062,6 +4065,8 @@ else
fi
AC_SUBST(mono_cfg_dir)
+AC_SUBST(CSC)
+
AC_CONFIG_FILES([po/mcs/Makefile.in])
AC_CONFIG_FILES([runtime/mono-wrapper],[chmod +x runtime/mono-wrapper])
@@ -4393,6 +4398,8 @@ fi
echo "BCL_OPTIMIZE = 1" >> $srcdir/$mcsdir/build/config.make
fi
+ echo "CSC_LOCATION = $CSC" >> $srcdir/$mcsdir/build/config.make
+
if test "x$AOT_BUILD_FLAGS" != "x" ; then
echo "AOT_RUN_FLAGS=$AOT_RUN_FLAGS" >> $srcdir/$mcsdir/build/config.make
echo "AOT_BUILD_FLAGS=$AOT_BUILD_FLAGS" >> $srcdir/$mcsdir/build/config.make
diff --git a/external/roslyn-binaries b/external/roslyn-binaries
new file mode 160000
+Subproject a1c06d559d6f2cbbaeae86ea87632d409a82ca9
diff --git a/mcs/Makefile b/mcs/Makefile
index 6e02ba6c8e8..90a06682edd 100644
--- a/mcs/Makefile
+++ b/mcs/Makefile
@@ -1,11 +1,11 @@
thisdir := .
-SUBDIRS := build jay mcs class nunit24 ilasm tools tests errors docs
+SUBDIRS := build jay mcs class nunit24 ilasm tools tests errors docs packages
# Resgen is corlib specific tool
-basic_SUBDIRS := build jay mcs class
-build_SUBDIRS := build class mcs class/aot-compiler tools
+basic_SUBDIRS := build class
+build_SUBDIRS := build jay class class/aot-compiler tools
monodroid_SUBDIRS := build class
monotouch_SUBDIRS := build class
monotouch_watch_SUBDIRS := build class
@@ -17,7 +17,7 @@ xammac_SUBDIRS := build class
aot_hybrid_SUBDIRS := build class ilasm
aot_only_SUBDIRS := build class ilasm
binary_reference_assemblies_SUBDIRS := build class
-net_4_x_SUBDIRS := build mcs class nunit24 ilasm tools tests errors docs
+net_4_x_SUBDIRS := build class nunit24 ilasm tools tests errors docs mcs class/aot-compiler
xammac_net_4_5_SUBDIRS := build class
xbuild_12_SUBDIRS := build class tools/xbuild
xbuild_14_SUBDIRS := build class tools/xbuild
diff --git a/mcs/build/config-default.make b/mcs/build/config-default.make
index 9e4fcf64a30..f0701cfb142 100644
--- a/mcs/build/config-default.make
+++ b/mcs/build/config-default.make
@@ -11,9 +11,10 @@ CODEPAGE = 65001
RUNTIME_FLAGS =
TEST_HARNESS = $(topdir)/class/lib/$(PROFILE)/$(PARENT_PROFILE)nunit-lite-console.exe
+PLATFORM_DEBUG_FLAGS = /debug:portable
MCS_FLAGS =
-MBAS_FLAGS = $(PLATFORM_DEBUG_FLAGS)
-LIBRARY_FLAGS = /noconfig
+MBAS_FLAGS = -debug
+LIBRARY_FLAGS =
ifndef CFLAGS
CFLAGS = -g -O2
endif
diff --git a/mcs/build/executable.make b/mcs/build/executable.make
index 8acb0f5df61..1a9ffab0e7f 100644
--- a/mcs/build/executable.make
+++ b/mcs/build/executable.make
@@ -42,6 +42,9 @@ executable_CLEAN_FILES += $(build_lib) $(build_lib).so $(build_lib).mdb $(build_
makefrag = $(depsdir)/$(PROFILE)_$(base_prog).makefrag
+MCS_REFERENCES = $(patsubst %,-r:$(topdir)/class/lib/$(PROFILE)/%.dll,$(LIB_REFS))
+MCS_REFERENCES += $(patsubst %,-r:$(topdir)/class/lib/$(PROFILE)/%.exe,$(EXE_REFS))
+
ifndef NO_BUILD
all-local: $(the_lib) $(PROGRAM_config)
endif
@@ -63,6 +66,7 @@ install-local:
$(MKINSTALLDIRS) $(DESTDIR)$(PROGRAM_INSTALL_DIR)
$(INSTALL_BIN) $(the_lib) $(DESTDIR)$(PROGRAM_INSTALL_DIR)
test ! -f $(the_lib).mdb || $(INSTALL_BIN) $(the_lib).mdb $(DESTDIR)$(PROGRAM_INSTALL_DIR)
+ test ! -f $(the_lib:.exe=.pdb) || $(INSTALL_BIN) $(the_lib:.exe=.pdb) $(DESTDIR)$(PROGRAM_INSTALL_DIR)
ifdef PROGRAM_config
$(INSTALL_DATA) $(PROGRAM_config) $(DESTDIR)$(PROGRAM_INSTALL_DIR)
endif
@@ -71,7 +75,8 @@ ifdef PLATFORM_AOT_SUFFIX
endif
uninstall-local:
- -rm -f $(DESTDIR)$(PROGRAM_INSTALL_DIR)/$(base_prog) $(DESTDIR)$(PROGRAM_INSTALL_DIR)/$(base_prog).mdb $(DESTDIR)$(PROGRAM_INSTALL_DIR)/$(base_prog).config
+ -rm -f $(DESTDIR)$(PROGRAM_INSTALL_DIR)/$(base_prog) $(DESTDIR)$(PROGRAM_INSTALL_DIR)/$(base_prog).mdb \
+ $(DESTDIR)$(PROGRAM_INSTALL_DIR)/$(base_prog:.exe=.pdb) $(DESTDIR)$(PROGRAM_INSTALL_DIR)/$(base_prog).config
endif
clean-local:
@@ -151,9 +156,6 @@ endif
-include $(makefrag)
-MCS_REFERENCES = $(patsubst %,-r:$(topdir)/class/lib/$(PROFILE)/%.dll,$(LIB_REFS))
-MCS_REFERENCES += $(patsubst %,-r:$(topdir)/class/lib/$(PROFILE)/%.exe,$(EXE_REFS))
-
all-local: $(makefrag) $(extra_targets)
ifdef BUILT_SOURCES
diff --git a/mcs/build/library.make b/mcs/build/library.make
index e604beb8f75..2f5b845ec5d 100644
--- a/mcs/build/library.make
+++ b/mcs/build/library.make
@@ -72,12 +72,10 @@ the_libdir_base = $(topdir)/class/$(lib_dir)/$(PROFILE)/
endif
ifdef RESOURCE_STRINGS
-ifdef BOOTSTRAP_PROFILE
-ifneq (basic, $(BUILD_TOOLS_PROFILE))
+ifneq (basic, $(PROFILE))
RESOURCE_STRINGS_FILES += $(RESOURCE_STRINGS:%=--resourcestrings:%)
endif
endif
-endif
#
# The bare directory contains the plain versions of System and System.Xml
@@ -168,12 +166,14 @@ install-local:
$(MKINSTALLDIRS) $(DESTDIR)$(LIBRARY_INSTALL_DIR)
$(INSTALL_LIB) $(the_lib) $(DESTDIR)$(LIBRARY_INSTALL_DIR)/$(LIBRARY_NAME)
test ! -f $(the_lib).mdb || $(INSTALL_LIB) $(the_lib).mdb $(DESTDIR)$(LIBRARY_INSTALL_DIR)/$(LIBRARY_NAME).mdb
+ test ! -f $(the_lib:.dll=.pdb) || $(INSTALL_LIB) $(the_lib:.dll=.pdb) $(DESTDIR)$(LIBRARY_INSTALL_DIR)/$(LIBRARY_NAME:.dll=.pdb)
+
ifdef PLATFORM_AOT_SUFFIX
test ! -f $(aot_lib) || $(INSTALL_LIB) $(aot_lib) $(DESTDIR)$(LIBRARY_INSTALL_DIR)
endif
uninstall-local:
- -rm -f $(DESTDIR)$(LIBRARY_INSTALL_DIR)/$(LIBRARY_NAME) $(DESTDIR)$(LIBRARY_INSTALL_DIR)/$(LIBRARY_NAME).mdb
+ -rm -f $(DESTDIR)$(LIBRARY_INSTALL_DIR)/$(LIBRARY_NAME) $(DESTDIR)$(LIBRARY_INSTALL_DIR)/$(LIBRARY_NAME).mdb $(DESTDIR)$(LIBRARY_INSTALL_DIR)/$(LIBRARY_NAME:.dll=.pdb)
else
diff --git a/mcs/build/platforms/darwin.make b/mcs/build/platforms/darwin.make
index 4b7b279f0c7..af397fe1c11 100644
--- a/mcs/build/platforms/darwin.make
+++ b/mcs/build/platforms/darwin.make
@@ -3,7 +3,6 @@
# Platform-specific makefile rules. This one's for linux.
#
-PLATFORM_DEBUG_FLAGS = -debug
PLATFORM_MCS_FLAGS =
PLATFORM_RUNTIME = $(RUNTIME)
PLATFORM_CORLIB = mscorlib.dll
diff --git a/mcs/build/platforms/linux.make b/mcs/build/platforms/linux.make
index 00504140796..02348318afe 100644
--- a/mcs/build/platforms/linux.make
+++ b/mcs/build/platforms/linux.make
@@ -3,7 +3,6 @@
# Platform-specific makefile rules. This one's for linux.
#
-PLATFORM_DEBUG_FLAGS = -debug
PLATFORM_MCS_FLAGS =
PLATFORM_RUNTIME = $(RUNTIME)
PLATFORM_CORLIB = mscorlib.dll
diff --git a/mcs/build/platforms/win32.make b/mcs/build/platforms/win32.make
index 4f34c924f03..1e5ea9b803b 100644
--- a/mcs/build/platforms/win32.make
+++ b/mcs/build/platforms/win32.make
@@ -3,8 +3,7 @@
# Win32 platform-specific makefile rules.
#
-PLATFORM_DEBUG_FLAGS = /debug+ /debug:full
-PLATFORM_MCS_FLAGS = /nologo
+PLATFORM_MCS_FLAGS =
PLATFORM_RUNTIME =
PLATFORM_CORLIB = mscorlib.dll
PLATFORM_TEST_HARNESS_EXCLUDES = NotOnWindows,
diff --git a/mcs/build/profiles/aot_hybrid.make b/mcs/build/profiles/aot_hybrid.make
index e531f44a4b5..7b1365f9548 100644
--- a/mcs/build/profiles/aot_hybrid.make
+++ b/mcs/build/profiles/aot_hybrid.make
@@ -2,8 +2,8 @@
BOOTSTRAP_PROFILE = build
-BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS)
-MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS)
+BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" CSC_SDK_PATH_DISABLED= $(INTERNAL_CSC)
+MCS = $(BOOTSTRAP_MCS)
# Use system resgen as we don't want local System.Windows.Forms dependency
RESGEN = resgen2
diff --git a/mcs/build/profiles/aot_only.make b/mcs/build/profiles/aot_only.make
index 324bdc2a4ba..0ef7cf889b5 100644
--- a/mcs/build/profiles/aot_only.make
+++ b/mcs/build/profiles/aot_only.make
@@ -2,8 +2,8 @@
BOOTSTRAP_PROFILE = build
-BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS)
-MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS)
+BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" CSC_SDK_PATH_DISABLED= $(INTERNAL_CSC)
+MCS = $(BOOTSTRAP_MCS)
# Use system resgen as we don't want local System.Windows.Forms dependency
RESGEN = resgen2
diff --git a/mcs/build/profiles/basic.make b/mcs/build/profiles/basic.make
index 12b80615bdb..9170e7c0897 100644
--- a/mcs/build/profiles/basic.make
+++ b/mcs/build/profiles/basic.make
@@ -6,19 +6,24 @@ with_mono_path_monolite = MONO_PATH="$(topdir)/class/lib/monolite$(PLATFORM_PATH
monolite_flag := $(depsdir)/use-monolite
use_monolite := $(wildcard $(monolite_flag))
-MONOLITE_MCS = $(topdir)/class/lib/monolite/basic.exe
+MONOLITE_MSCORLIB = $(topdir)/class/lib/monolite/mscorlib.dll
+
+# Bootstrap compiler does not have to be same as production compiler
+INTERNAL_GMCS = $(CSC_LOCATION)
ifdef use_monolite
PROFILE_RUNTIME = $(with_mono_path_monolite) $(RUNTIME)
-BOOTSTRAP_MCS = $(PROFILE_RUNTIME) $(RUNTIME_FLAGS) $(MONOLITE_MCS)
else
PROFILE_RUNTIME = $(EXTERNAL_RUNTIME)
-BOOTSTRAP_MCS = $(EXTERNAL_MCS)
endif
-MCS = $(with_mono_path) $(INTERNAL_GMCS)
+INTERNAL_CSC = $(PROFILE_RUNTIME) $(RUNTIME_FLAGS) $(INTERNAL_GMCS)
+BOOTSTRAP_MCS = CSC_SDK_PATH_DISABLED= $(INTERNAL_CSC)
+MCS = $(BOOTSTRAP_MCS)
+
+DEFAULT_REFERENCES = -r:$(topdir)/class/lib/$(PROFILE)/mscorlib.dll
-PROFILE_MCS_FLAGS = -d:NET_4_0 -d:NET_4_5 -d:MONO -d:BOOTSTRAP_BASIC -nowarn:1699 -lib:$(topdir)/class/lib/$(PROFILE)
+PROFILE_MCS_FLAGS = -d:NET_4_0 -d:NET_4_5 -d:MONO -d:BOOTSTRAP_BASIC -nowarn:1699 -nostdlib $(DEFAULT_REFERENCES)
NO_SIGN_ASSEMBLY = yes
NO_TEST = yes
NO_INSTALL = yes
@@ -33,7 +38,7 @@ LIBRARY_COMPILE = $(BOOT_COMPILE)
#
# Copy from rules.make because I don't know how to unset MCS_FLAGS
#
-USE_MCS_FLAGS = /codepage:$(CODEPAGE) $(LOCAL_MCS_FLAGS) $(PLATFORM_MCS_FLAGS) $(PROFILE_MCS_FLAGS)
+USE_MCS_FLAGS = /codepage:$(CODEPAGE) /nologo /noconfig $(LOCAL_MCS_FLAGS) $(PLATFORM_MCS_FLAGS) $(PROFILE_MCS_FLAGS)
.PHONY: profile-check do-profile-check
profile-check:
@@ -59,15 +64,15 @@ MAKE_Q=$(if $(V),,-s)
do-profile-check: $(depsdir)/.stamp
@ok=:; \
rm -f $(PROFILE_EXE) $(PROFILE_OUT); \
+ if [ -z '$(MAKE_Q)' ] && [ -n '$(PROFILE_RUNTIME)' ]; then $(PROFILE_RUNTIME) --version; fi; \
$(MAKE) $(MAKE_Q) $(PROFILE_OUT) || ok=false; \
if $$ok; then rm -f $(PROFILE_EXE) $(PROFILE_OUT); else \
- if test -f $(MONOLITE_MCS); then \
- $(MAKE) -s do-profile-check-monolite ; \
+ if test -f $(MONOLITE_MSCORLIB); then \
+ $(MAKE) $(MAKE_Q) do-profile-check-monolite ; \
else \
- echo "*** The compiler '$(BOOTSTRAP_MCS)' doesn't appear to be usable." 1>&2; \
+ echo "*** The runtime '$(PROFILE_RUNTIME)' doesn't appear to be usable." 1>&2; \
echo "*** You need Mono version 4.0 or better installed to build MCS" 1>&2 ; \
echo "*** Check mono README for information on how to bootstrap a Mono installation." 1>&2 ; \
- echo "*** The version of '$(BOOTSTRAP_MCS)' is: `$(BOOTSTRAP_MCS) --version`." 1>&2 ; \
exit 1; fi; fi
@@ -82,7 +87,7 @@ do-profile-check-monolite:
else
do-profile-check-monolite: $(depsdir)/.stamp
- @echo "*** The compiler '$(BOOTSTRAP_MCS)' doesn't appear to be usable." 1>&2
+ @echo "*** The runtime '$(PROFILE_RUNTIME)' doesn't appear to be usable." 1>&2
@echo "*** Trying the 'monolite' directory." 1>&2
@echo dummy > $(monolite_flag)
$(MAKE) do-profile-check
@@ -90,9 +95,8 @@ do-profile-check-monolite: $(depsdir)/.stamp
endif
$(PROFILE_EXE): $(topdir)/build/common/basic-profile-check.cs
- $(BOOTSTRAP_MCS) /warn:0 /out:$@ $<
- echo -n "Bootstrap compiler: " 1>&2
- $(BOOTSTRAP_MCS) --version 1>&2
+ $(MAKE) $(MAKE_Q) -C $(topdir)/packages
+ $(INTERNAL_CSC) /warn:0 /noconfig /r:System.dll /r:mscorlib.dll /out:$@ $<
$(PROFILE_OUT): $(PROFILE_EXE)
$(PROFILE_RUNTIME) $< > $@ 2>&1
diff --git a/mcs/build/profiles/build.make b/mcs/build/profiles/build.make
index 1acf54c1e2e..ae5e3d3bbad 100644
--- a/mcs/build/profiles/build.make
+++ b/mcs/build/profiles/build.make
@@ -3,9 +3,10 @@
BOOTSTRAP_PROFILE = basic
BUILD_TOOLS_PROFILE = basic
-INTERNAL_GMCS = $(RUNTIME) $(RUNTIME_FLAGS) $(topdir)/class/lib/$(BUILD_TOOLS_PROFILE)/basic.exe
-BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS)
-MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS)
+# Using CSC_SDK_PATH_DISABLED for sanity check that all references have path specified
+
+BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" CSC_SDK_PATH_DISABLED= $(INTERNAL_CSC)
+MCS = $(BOOTSTRAP_MCS)
# nuttzing!
diff --git a/mcs/build/profiles/monodroid.make b/mcs/build/profiles/monodroid.make
index 65919907c27..8938183f50f 100644
--- a/mcs/build/profiles/monodroid.make
+++ b/mcs/build/profiles/monodroid.make
@@ -2,8 +2,8 @@
BOOTSTRAP_PROFILE = build
-BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS)
-MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS)
+BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" CSC_SDK_PATH_DISABLED= $(INTERNAL_CSC)
+MCS = $(BOOTSTRAP_MCS)
# Use system resgen as we don't want local System.Windows.Forms dependency
RESGEN = resgen2
diff --git a/mcs/build/profiles/monotouch_runtime.make b/mcs/build/profiles/monotouch_runtime.make
index 9133dc24984..4b50a30eb95 100644
--- a/mcs/build/profiles/monotouch_runtime.make
+++ b/mcs/build/profiles/monotouch_runtime.make
@@ -2,8 +2,8 @@
BOOTSTRAP_PROFILE = build
-BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS)
-MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS)
+BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" CSC_SDK_PATH_DISABLED= $(INTERNAL_CSC)
+MCS = $(BOOTSTRAP_MCS)
# Use system resgen as we don't want local System.Windows.Forms dependency
RESGEN := $(dir $(shell which $(EXTERNAL_MCS)))resgen2
diff --git a/mcs/build/profiles/net_4_x.make b/mcs/build/profiles/net_4_x.make
index 00d5bc12ee4..a0931c7e66e 100644
--- a/mcs/build/profiles/net_4_x.make
+++ b/mcs/build/profiles/net_4_x.make
@@ -2,8 +2,10 @@
BOOTSTRAP_PROFILE = build
-BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS)
-MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS)
+# Using CSC_SDK_PATH_DISABLED for sanity check that all references have path specified
+
+BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" CSC_SDK_PATH_DISABLED= $(INTERNAL_CSC)
+MCS = $(BOOTSTRAP_MCS)
# nuttzing!
diff --git a/mcs/build/profiles/xammac.make b/mcs/build/profiles/xammac.make
index ab1aa6fa071..47b8534b5ca 100644
--- a/mcs/build/profiles/xammac.make
+++ b/mcs/build/profiles/xammac.make
@@ -1,7 +1,7 @@
BOOTSTRAP_PROFILE = build
-BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS)
-MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(INTERNAL_GMCS)
+BOOTSTRAP_MCS = MONO_PATH="$(topdir)/class/lib/$(BOOTSTRAP_PROFILE)$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" CSC_SDK_PATH_DISABLED= $(INTERNAL_CSC)
+MCS = $(BOOTSTRAP_MCS)
# Use system resgen as we don't want local System.Windows.Forms dependency
RESGEN := $(dir $(shell which $(EXTERNAL_MCS)))resgen2
diff --git a/mcs/build/rules.make b/mcs/build/rules.make
index 40b33a7aecc..b0d999d7389 100644
--- a/mcs/build/rules.make
+++ b/mcs/build/rules.make
@@ -29,7 +29,7 @@ ifndef BUILD_TOOLS_PROFILE
BUILD_TOOLS_PROFILE = build
endif
-USE_MCS_FLAGS = /codepage:$(CODEPAGE) $(LOCAL_MCS_FLAGS) $(PLATFORM_MCS_FLAGS) $(PROFILE_MCS_FLAGS) $(MCS_FLAGS)
+USE_MCS_FLAGS = /codepage:$(CODEPAGE) /nologo /noconfig /deterministic $(LOCAL_MCS_FLAGS) $(PLATFORM_MCS_FLAGS) $(PROFILE_MCS_FLAGS) $(MCS_FLAGS)
USE_MBAS_FLAGS = /codepage:$(CODEPAGE) $(LOCAL_MBAS_FLAGS) $(PLATFORM_MBAS_FLAGS) $(PROFILE_MBAS_FLAGS) $(MBAS_FLAGS)
USE_CFLAGS = $(LOCAL_CFLAGS) $(CFLAGS) $(CPPFLAGS)
CSCOMPILE = $(Q_MCS) $(MCS) $(USE_MCS_FLAGS)
@@ -42,7 +42,6 @@ INSTALL_BIN = $(INSTALL) -c -m 755
INSTALL_LIB = $(INSTALL_BIN)
MKINSTALLDIRS = $(SHELL) $(topdir)/mkinstalldirs
INTERNAL_MBAS = $(RUNTIME) $(RUNTIME_FLAGS) $(topdir)/mbas/mbas.exe
-INTERNAL_GMCS = $(RUNTIME) $(RUNTIME_FLAGS) $(topdir)/class/lib/$(BUILD_TOOLS_PROFILE)/mcs.exe
INTERNAL_ILASM = $(RUNTIME) $(RUNTIME_FLAGS) $(topdir)/class/lib/$(PROFILE)/ilasm.exe
INTERNAL_CSC = $(RUNTIME) $(RUNTIME_FLAGS) $(CSC_LOCATION)
diff --git a/mcs/class/Facades/subdirs.make b/mcs/class/Facades/subdirs.make
index 10a0c81d51c..00fd7571824 100644
--- a/mcs/class/Facades/subdirs.make
+++ b/mcs/class/Facades/subdirs.make
@@ -43,12 +43,14 @@ aot_only_PARALLEL_SUBDIRS = $(monotouch_PARALLEL_SUBDIRS)
net_4_x_SUBDIRS = $(common_DEPS_SUBDIRS) $(drawing_DEPS_SUBDIRS)
net_4_x_PARALLEL_SUBDIRS = $(common_SUBDIRS)
-build_PARALLEL_SUBDIRS = System.Runtime System.Reflection System.Collections System.Resources.ResourceManager System.Globalization \
+basic_PARALLEL_SUBDIRS = System.Runtime System.Reflection System.Collections System.Resources.ResourceManager System.Globalization \
System.Threading.Tasks System.Collections.Concurrent System.Text.Encoding System.IO System.Threading System.Diagnostics.Debug \
System.Linq.Expressions System.Dynamic.Runtime System.Linq System.Threading.Tasks.Parallel System.Xml.ReaderWriter \
System.Diagnostics.Tools System.Reflection.Primitives System.Runtime.Extensions System.Runtime.InteropServices System.Text.Encoding.Extensions \
System.Runtime.Numerics System.Xml.XDocument System.Reflection.Extensions
+build_PARALLEL_SUBDIRS = $(basic_PARALLEL_SUBDIRS)
+
monodroid_SUBDIRS = $(monotouch_SUBDIRS)
monodroid_PARALLEL_SUBDIRS = $(monotouch_PARALLEL_SUBDIRS)
diff --git a/mcs/class/Makefile b/mcs/class/Makefile
index 6c883f85796..991e1ea417d 100644
--- a/mcs/class/Makefile
+++ b/mcs/class/Makefile
@@ -1,9 +1,21 @@
thisdir = class
-basic_SUBDIRS := corlib Mono.Security System System.XML System.Core
-
pcl_facade_dirs := Facades
+# The minimal set of csc dependencies
+basic_SUBDIRS := \
+ corlib \
+ Mono.Security \
+ System \
+ System.XML \
+ System.Core \
+ System.ComponentModel.Composition.4.5 \
+ System.Numerics \
+ System.Xml.Linq \
+ Mono.Cecil \
+ $(pcl_facade_dirs) \
+ ../tools/cil-stringreplacer
+
# resgen is corlib specific so we need to wait until corlib is build
# and build it just a step before first dll needs it
resgen_dir = ../tools/resgen
@@ -15,12 +27,12 @@ build_SUBDIRS := \
System.XML \
Mono.Posix \
System.Core \
- Mono.Cecil \
- Mono.Cecil.Mdb \
System.ComponentModel.Composition.4.5 \
System.Numerics \
System.Xml.Linq \
- $(pcl_facade_dirs)
+ Mono.Cecil \
+ $(pcl_facade_dirs) \
+ ../tools/cil-stringreplacer
mobile_common_dirs := \
corlib \
@@ -319,7 +331,7 @@ xammac_SUBDIRS := $(xammac_dirs)
xammac_net_4_5_SUBDIRS := $(xammac_4_5_dirs)
binary_reference_assemblies_SUBDIRS := reference-assemblies
net_4_x_SUBDIRS := $(net_4_x_dirs) $(xbuild_4_0_dirs)
-net_4_x_PARALLEL_SUBDIRS := $(net_4_x_parallel_dirs) aot-compiler
+net_4_x_PARALLEL_SUBDIRS := $(net_4_x_parallel_dirs)
xbuild_12_SUBDIRS := $(xbuild_4_0_dirs)
xbuild_14_SUBDIRS := $(xbuild_4_0_dirs) Microsoft.NuGet.Build.Tasks
@@ -350,7 +362,6 @@ DISTFILES = \
MicrosoftAjaxLibrary/License.htm \
test-helpers/NetworkHelpers.cs \
test-helpers/SocketResponder.cs \
- lib/$(monolite_dir)/basic.exe \
$(monolite_files)
.PHONY: all-local $(STD_TARGETS:=-local)
@@ -383,13 +394,10 @@ $(monolite_files): | lib/$(monolite_dir)/Facades
$(monolite_files): lib/$(monolite_dir)/%: lib/build/%
cp -p $< $@
-lib/$(monolite_dir)/basic.exe:
- cp -p lib/basic/basic.exe lib/$(monolite_dir)
-
$(build_files:%=lib/build/%):
cd $(topdir) && $(MAKE) profile-do--build--all NO_DIR_CHECK=1 SKIP_AOT=1
-dist-monolite: $(monolite_files) lib/$(monolite_dir)/basic.exe
+dist-monolite: $(monolite_files)
dist-default: dist-monolite
diff --git a/mcs/class/Microsoft.Build.Engine/Makefile b/mcs/class/Microsoft.Build.Engine/Makefile
index 9acd2e184d4..3c6915a0b75 100644
--- a/mcs/class/Microsoft.Build.Engine/Makefile
+++ b/mcs/class/Microsoft.Build.Engine/Makefile
@@ -28,8 +28,7 @@ test-local: compile-resources
compile-resources: Test/resources/TestTasks-$(PROFILE).dll
cp Test/resources/TestTasks-$(PROFILE).dll Test/resources/TestTasks.dll
- cp Test/resources/TestTasks-$(PROFILE).dll.mdb Test/resources/TestTasks.dll.mdb
-# cp Test/resources/TestTasks-$(PROFILE).pdb Test/resources/TestTasks.pdb
+ cp Test/resources/TestTasks-$(PROFILE).pdb Test/resources/TestTasks.pdb
include $(XBUILD_DIR)/xbuild_test.make
include ../../build/library.make
diff --git a/mcs/class/Microsoft.Build.Tasks/Microsoft.Build.Tasks/Csc.cs b/mcs/class/Microsoft.Build.Tasks/Microsoft.Build.Tasks/Csc.cs
index 0e2c956919b..d6e3ff6a434 100644
--- a/mcs/class/Microsoft.Build.Tasks/Microsoft.Build.Tasks/Csc.cs
+++ b/mcs/class/Microsoft.Build.Tasks/Microsoft.Build.Tasks/Csc.cs
@@ -219,7 +219,7 @@ namespace Microsoft.Build.Tasks {
protected override string ToolName {
get {
- return MSBuildUtils.RunningOnWindows ? "mcs.bat" : "mcs.exe";
+ return MSBuildUtils.RunningOnWindows ? "csc.bat" : "csc.exe";
}
}
diff --git a/mcs/class/Mono.Debugger.Soft/Test/dtest.cs b/mcs/class/Mono.Debugger.Soft/Test/dtest.cs
index f40e1aa83de..05896473e39 100644
--- a/mcs/class/Mono.Debugger.Soft/Test/dtest.cs
+++ b/mcs/class/Mono.Debugger.Soft/Test/dtest.cs
@@ -608,6 +608,7 @@ public class DebuggerTests
}
[Test]
+ [Category ("NotWorking")] // https://bugzilla.xamarin.com/show_bug.cgi?id=44974
public void SingleStepping () {
Event e = run_until ("single_stepping");
@@ -4008,7 +4009,8 @@ public class DebuggerTests
req.Disable ();
var frames = e.Thread.GetFrames ();
var locs = frames [0].Method.Locations;
- var next_loc = locs.First (l => (l.LineNumber == frames [0].Location.LineNumber + 2));
+
+ var next_loc = locs.First (l => (l.LineNumber == frames [0].Location.LineNumber + 3));
e.Thread.SetIP (next_loc);
@@ -4041,7 +4043,7 @@ public class DebuggerTests
req.Disable ();
var frames = e.Thread.GetFrames ();
var locs = frames [0].Method.Locations;
- var prev_loc = locs.First (l => (l.LineNumber == frames [0].Location.LineNumber - 3));
+ var prev_loc = locs.First (l => (l.LineNumber == frames [0].Location.LineNumber - 1));
AssertValue (2, frames [0].GetValue (frames [0].Method.GetLocal ("i")));
// Set back the ip to the first i ++; line
diff --git a/mcs/class/System/Microsoft.CSharp/CSharpCodeCompiler.cs b/mcs/class/System/Microsoft.CSharp/CSharpCodeCompiler.cs
index c41240fab9e..af3c1d69773 100644
--- a/mcs/class/System/Microsoft.CSharp/CSharpCodeCompiler.cs
+++ b/mcs/class/System/Microsoft.CSharp/CSharpCodeCompiler.cs
@@ -169,7 +169,7 @@ namespace Mono.CSharp
mcs.StartInfo.UseShellExecute=false;
mcs.StartInfo.RedirectStandardOutput=true;
mcs.StartInfo.RedirectStandardError=true;
- mcs.ErrorDataReceived += new DataReceivedEventHandler (McsStderrDataReceived);
+ mcs.OutputDataReceived += new DataReceivedEventHandler (McsStderrDataReceived);
// Use same text decoder as mcs and not user set values in Console
mcs.StartInfo.StandardOutputEncoding =
@@ -268,7 +268,7 @@ namespace Mono.CSharp
options.Win32Resource);
if (options.IncludeDebugInformation)
- args.Append("/debug+ /optimize- ");
+ args.Append("/debug:portable /optimize- ");
else
args.Append("/debug- /optimize+ ");
@@ -327,7 +327,9 @@ namespace Mono.CSharp
args.Append ("/noconfig ");
- args.Append (" -- ");
+ args.Append ("/nologo ");
+
+ // args.Append (" -- ");
foreach (string source in fileNames)
args.AppendFormat("\"{0}\" ",source);
return args.ToString();
diff --git a/mcs/class/System/System/MonoToolsLocator.cs b/mcs/class/System/System/MonoToolsLocator.cs
index 54433950e7f..8ac5c54b8a0 100755
--- a/mcs/class/System/System/MonoToolsLocator.cs
+++ b/mcs/class/System/System/MonoToolsLocator.cs
@@ -46,9 +46,12 @@ namespace System {
//if (!File.Exists (Mono))
// throw new FileNotFoundException ("Windows mono path not found: " + Mono);
- CSharpCompiler = Path.Combine (GacPath, "4.5\\mcs.exe");
- if (!File.Exists (CSharpCompiler))
- CSharpCompiler = Path.Combine (Path.GetDirectoryName (GacPath), "lib\\build\\mcs.exe");
+ CSharpCompiler = Path.Combine (GacPath, "4.5", "csc.exe");
+ if (!File.Exists (CSharpCompiler)) {
+ // Starting from mono\mcs\class
+ CSharpCompiler = Path.Combine (Path.GetDirectoryName (GacPath), "..", "..", "external", "roslyn-binaries",
+ "Microsoft.Net.Compilers", "Microsoft.Net.Compilers.1.3.2", "tools", "csc.exe");
+ }
//if (!File.Exists (CSharpCompiler))
// throw new FileNotFoundException ("C# compiler not found at " + CSharpCompiler);
@@ -67,9 +70,9 @@ namespace System {
Mono = "mono";
var mscorlibPath = new Uri (typeof (object).Assembly.CodeBase).LocalPath;
- CSharpCompiler = Path.GetFullPath (Path.Combine (mscorlibPath, "..", "..", "..", "..", "bin", "mcs"));
+ CSharpCompiler = Path.GetFullPath (Path.Combine (mscorlibPath, "..", "..", "..", "..", "bin", "csc"));
if (!File.Exists (CSharpCompiler))
- CSharpCompiler = "mcs";
+ CSharpCompiler = "csc";
VBCompiler = Path.GetFullPath (Path.Combine (mscorlibPath, "..", "..", "..", "..", "bin", "vbnc"));
if (!File.Exists (VBCompiler))
diff --git a/mcs/class/System/basic_System.dll.sources b/mcs/class/System/basic_System.dll.sources
deleted file mode 100644
index 8601a935e70..00000000000
--- a/mcs/class/System/basic_System.dll.sources
+++ /dev/null
@@ -1,2 +0,0 @@
-#include System.dll.sources
-../corlib/System.Security.Permissions/HostProtectionAttribute.cs
diff --git a/mcs/class/aot-compiler/Makefile b/mcs/class/aot-compiler/Makefile
index f01e0b18164..f5291e8d699 100644
--- a/mcs/class/aot-compiler/Makefile
+++ b/mcs/class/aot-compiler/Makefile
@@ -9,11 +9,22 @@ thisdir = class/aot-compiler
include ../../build/rules.make
the_libdir = $(topdir)/class/lib/$(PROFILE)/
+CSC_DIR = $(dir $(CSC_LOCATION))
# mcs.exe is only in the build profile, but the aot image should be compiled against the current
# profile
-mcs_exe = $(topdir)/class/lib/build/mcs.exe
+mcs_exe = $(the_libdir)/mcs.exe
mcs_aot_image = $(the_libdir)/mcs.exe$(PLATFORM_AOT_SUFFIX)
+csc_exe = $(CSC_LOCATION)
+csc_aot_image = $(csc_exe)$(PLATFORM_AOT_SUFFIX)
+csc_MCS_dll = $(CSC_DIR)/Microsoft.CodeAnalysis.CSharp.dll
+csc_MCS_image = $(csc_MCS_dll)$(PLATFORM_AOT_SUFFIX)
+csc_MC_dll = $(CSC_DIR)/Microsoft.CodeAnalysis.dll
+csc_MC_image = $(csc_MC_dll)$(PLATFORM_AOT_SUFFIX)
+csc_SRM_dll = $(CSC_DIR)/System.Reflection.Metadata.dll
+csc_SRM_image = $(csc_SRM_dll)$(PLATFORM_AOT_SUFFIX)
+csc_SCI_dll = $(CSC_DIR)/System.Collections.Immutable.dll
+csc_SCI_image = $(csc_SCI_dll)$(PLATFORM_AOT_SUFFIX)
mscorlib_dll = $(the_libdir)/mscorlib.dll
mscorlib_aot_image = $(mscorlib_dll)$(PLATFORM_AOT_SUFFIX)
@@ -31,17 +42,34 @@ ifdef PLATFORM_AOT_SUFFIX
$(mcs_aot_image): $(mcs_exe) $(mscorlib_dll) $(runtime_dep)
$(Q_AOT) MONO_PATH='$(the_libdir)' > $(PROFILE)_aot.log 2>&1 $(RUNTIME) --aot=bind-to-runtime-version,outfile=$(mcs_aot_image) --debug $(mcs_exe) || cat $(PROFILE)_aot.log || (cat $(PROFILE)_aot.log; exit 1)
+$(csc_aot_image): $(csc_exe) $(mscorlib_dll) $(runtime_dep)
+ $(Q_AOT) MONO_PATH='$(the_libdir)' > $(PROFILE)_aot.log 2>&1 $(RUNTIME) --aot=bind-to-runtime-version,outfile=$(csc_aot_image) --debug $(csc_exe) || cat $(PROFILE)_aot.log || (cat $(PROFILE)_aot.log; exit 1)
+
$(mscorlib_aot_image): $(mscorlib_dll) $(runtime_dep)
$(Q_AOT) MONO_PATH='$(the_libdir)' > $(PROFILE)_aot.log 2>&1 $(RUNTIME) --aot=bind-to-runtime-version --debug $(mscorlib_dll) || (cat $(PROFILE)_aot.log; exit 1)
+# Disabled as it hits AOT too big limit
+$(csc_MC_image): $(csc_MC_dll) $(runtime_dep)
+ $(Q_AOT) MONO_PATH='$(the_libdir)' > $(PROFILE)_aot.log 2>&1 $(RUNTIME) --aot=bind-to-runtime-version,outfile=$(csc_MC_image) --debug $(csc_MC_dll) || (cat $(PROFILE)_aot.log; exit 1)
+
+# Disabled as it hits AOT too big limit
+$(csc_MCS_image): $(csc_MCS_dll) $(runtime_dep)
+ $(Q_AOT) MONO_PATH='$(the_libdir)' > $(PROFILE)_aot.log 2>&1 $(RUNTIME) --aot=bind-to-runtime-version,outfile=$(csc_MCS_image) --debug $(csc_MCS_dll) || (cat $(PROFILE)_aot.log; exit 1)
+
+$(csc_SRM_image): $(csc_SRM_dll) $(runtime_dep)
+ $(Q_AOT) MONO_PATH='$(the_libdir)' > $(PROFILE)_aot.log 2>&1 $(RUNTIME) --aot=bind-to-runtime-version,outfile=$(csc_SRM_image) --debug $(csc_SRM_dll) || (cat $(PROFILE)_aot.log; exit 1)
+
+$(csc_SCI_image): $(csc_SCI_dll) $(runtime_dep)
+ $(Q_AOT) MONO_PATH='$(the_libdir)' > $(PROFILE)_aot.log 2>&1 $(RUNTIME) --aot=bind-to-runtime-version,outfile=$(csc_SCI_image) --debug $(csc_SCI_dll) || (cat $(PROFILE)_aot.log; exit 1)
+
ifdef ENABLE_AOT
clean-local:
- -rm -f $(mscorlib_aot_image) $(mcs_aot_image) $(PROFILE)_aot.log
+ -rm -f $(mscorlib_aot_image) $(mcs_aot_image) $(csc_aot_image) $(csc_SRM_image) $(csc_SCI_image) $(PROFILE)_aot.log
# AOT build profile mcs to speed up build
ifeq ($(PROFILE),build)
-all-local: $(mscorlib_aot_image) $(mcs_aot_image)
+all-local: $(mscorlib_aot_image) $(csc_aot_image) $(csc_SRM_image) $(csc_SCI_image)
install-local:
endif
diff --git a/mcs/class/corlib/Makefile b/mcs/class/corlib/Makefile
index 8f7127307dc..ab29d69da51 100644
--- a/mcs/class/corlib/Makefile
+++ b/mcs/class/corlib/Makefile
@@ -11,10 +11,10 @@ LIB_MCS_FLAGS = $(REFERENCE_SOURCES_FLAGS) $(RESOURCE_FILES:%=-resource:%)
#LIBRARY_USE_INTERMEDIATE_FILE = yes
ifeq (2, $(FRAMEWORK_VERSION_MAJOR))
-LIB_MCS_FLAGS += --runtime:v4
+LIB_MCS_FLAGS += -runtimemetadataversion:v4.0.30319
else
ifeq (4, $(FRAMEWORK_VERSION_MAJOR))
-LIB_MCS_FLAGS += --runtime:v4
+LIB_MCS_FLAGS += -runtimemetadataversion:v4.0.30319
else
$(error Unknown framework version)
endif
diff --git a/mcs/class/monodoc/Assembly/AssemblyInfo.cs b/mcs/class/monodoc/Assembly/AssemblyInfo.cs
index 61c5fdcb700..4b39ca9bc28 100644
--- a/mcs/class/monodoc/Assembly/AssemblyInfo.cs
+++ b/mcs/class/monodoc/Assembly/AssemblyInfo.cs
@@ -2,5 +2,5 @@ using System.Reflection;
using System.Runtime.CompilerServices;
[assembly:AssemblyVersion("1.0.0.0")]
-[assembly:AssemblyDelaySign(false)]
+[assembly:AssemblyDelaySign(true)]
[assembly:AssemblyKeyFile("../../class/mono.snk")]
diff --git a/mcs/class/monodoc/Makefile b/mcs/class/monodoc/Makefile
index 50f84cfd617..a74c9550b55 100644
--- a/mcs/class/monodoc/Makefile
+++ b/mcs/class/monodoc/Makefile
@@ -110,8 +110,7 @@ LIB_MCS_FLAGS = \
/resource:Resources/mono-ecma.css,mono-ecma.css \
/resource:Resources/mono-ecma.xsl,mono-ecma.xsl \
/resource:Resources/toc-html.xsl,toc-html.xsl \
- $(IMAGE_RESOURCE_COMMAND) \
- /publicsign
+ $(IMAGE_RESOURCE_COMMAND)
CLEAN_FILES += $(the_lib).config
diff --git a/mcs/errors/CS0029-26-lib.cs b/mcs/errors/CS0029-26-lib.cs
index ea06316444a..8bba78517de 100644
--- a/mcs/errors/CS0029-26-lib.cs
+++ b/mcs/errors/CS0029-26-lib.cs
@@ -1,5 +1,4 @@
[assembly:System.Reflection.AssemblyVersionAttribute ("1.0.0.0")]
-[assembly:System.Reflection.AssemblyKeyFile("key.snk")]
public class B
{
diff --git a/mcs/errors/CSFriendAssembly-lib.cs b/mcs/errors/CSFriendAssembly-lib.cs
index ccad9514aa9..d32f2d4eeb0 100644
--- a/mcs/errors/CSFriendAssembly-lib.cs
+++ b/mcs/errors/CSFriendAssembly-lib.cs
@@ -2,7 +2,6 @@ using System;
using System.Reflection;
using System.Runtime.CompilerServices;
-[assembly: AssemblyKeyFile ("key.snk")]
[assembly: InternalsVisibleTo ("cs0281, PublicKey=0024000004800000940000000602000000240000525341310004000011000000e39d99616f48cf7d6d59f345e485e713e89b8b1265a31b1a393e9894ee3fbddaf382dcaf4083dc31ee7a40a2a25c69c6d019fba9f37ec17fd680e4f6fe3b5305f71ae9e494e3501d92508c2e98ca1e22991a217aa8ce259c9882ffdfff4fbc6fa5e6660a8ff951cd94ed011e5633651b64e8f4522519b6ec84921ee22e4840e8")]
public class FriendClass
diff --git a/mcs/errors/Makefile b/mcs/errors/Makefile
index 2c37329cd15..de5b54e81e0 100644
--- a/mcs/errors/Makefile
+++ b/mcs/errors/Makefile
@@ -68,7 +68,7 @@ check: run-test-local
TEST_PATTERN = 'v4'
TESTER_OPTIONS = -compiler-options:"-v --break-on-ice -d:NET_4_0;NET_4_5"
-COMPILER = $(topdir)/class/lib/$(BUILD_TOOLS_PROFILE)/mcs.exe
+COMPILER = $(topdir)/class/lib/$(PROFILE)/mcs.exe
TESTER = MONO_RUNTIME='$(RUNTIME)' $(TEST_RUNTIME) $(RUNTIME_FLAGS) $(LOCAL_RUNTIME_FLAGS) $(topdir)/class/lib/$(PROFILE)/compiler-tester.exe
run-mcs-tests: $(TEST_SUPPORT_FILES)
@@ -84,34 +84,34 @@ dist-local: dist-default
csproj-local install-local uninstall-local:
CS0029-26-lib.dll : CS0029-26-lib.cs
- $(CSCOMPILE) /target:library /publicsign /out:$@ $<
+ $(CSCOMPILE) /target:library /publicsign /keyfile:key.snk /out:$@ $<
CS0266-25-lib.dll: CS0266-25-lib.cs
$(CSCOMPILE) /target:library /r:$(topdir)/class/lib/$(PROFILE)/System.Core.dll /out:$@ $<
dlls/first/CS1701-lib.dll: dlls/first/CS1701-lib.cs
- $(CSCOMPILE) /target:library /warn:0 /publicsign /out:$@ $<
+ $(CSCOMPILE) /target:library /warn:0 /publicsign /keyfile:key.snk /out:$@ $<
dlls/first/CS1702-lib.dll: dlls/first/CS1702-lib.cs
- $(CSCOMPILE) /target:library /warn:0 /publicsign /out:$@ $<
+ $(CSCOMPILE) /target:library /warn:0 /publicsign /keyfile:key.snk /out:$@ $<
dlls/first/CS1703-lib.dll: dlls/first/CS1703-lib.cs
- $(CSCOMPILE) /target:library /warn:0 /publicsign /out:$@ $<
+ $(CSCOMPILE) /target:library /warn:0 /publicsign /keyfile:key.snk /out:$@ $<
dlls/first/CS1705-lib.dll: dlls/first/CS1705-lib.cs
- $(CSCOMPILE) /target:library /warn:0 /publicsign /out:$@ $<
+ $(CSCOMPILE) /target:library /warn:0 /publicsign /keyfile:key.snk /out:$@ $<
dlls/second/CS1701-lib.dll: dlls/second/CS1701-lib.cs
- $(CSCOMPILE) /target:library /warn:0 /publicsign /out:$@ $<
+ $(CSCOMPILE) /target:library /warn:0 /publicsign /keyfile:key.snk /out:$@ $<
dlls/second/CS1702-lib.dll: dlls/second/CS1702-lib.cs
- $(CSCOMPILE) /target:library /warn:0 /publicsign /out:$@ $<
+ $(CSCOMPILE) /target:library /warn:0 /publicsign /keyfile:key.snk /out:$@ $<
dlls/second/CS1703-lib.dll: dlls/second/CS1703-lib.cs
- $(CSCOMPILE) /target:library /warn:0 /publicsign /out:$@ $<
+ $(CSCOMPILE) /target:library /warn:0 /publicsign /keyfile:key.snk /out:$@ $<
dlls/second/CS1705-lib.dll: dlls/second/CS1705-lib.cs
- $(CSCOMPILE) /target:library /warn:0 /publicsign /out:$@ $<
+ $(CSCOMPILE) /target:library /warn:0 /publicsign /keyfile:key.snk /out:$@ $<
CS1701-lib.dll : CS1701-lib.cs
$(CSCOMPILE) /target:library /warn:0 /r:dlls/first/CS1701-lib.dll /out:$@ $<
@@ -122,6 +122,9 @@ CS1702-lib.dll : CS1702-lib.cs
CS1705-lib.dll : CS1705-lib.cs
$(CSCOMPILE) /target:library /warn:0 /r:dlls/first/CS1705-lib.dll /out:$@ $<
+CSFriendAssembly-lib.dll : CSFriendAssembly-lib.cs
+ $(CSCOMPILE) /target:library /publicsign /keyfile:key.snk /warn:0 /out:$@ $<
+
%-lib.dll: %-lib.cs
$(CSCOMPILE) /target:library /warn:0 /out:$@ $<
diff --git a/mcs/errors/dlls/first/CS1701-lib.cs b/mcs/errors/dlls/first/CS1701-lib.cs
index ea06316444a..8bba78517de 100644
--- a/mcs/errors/dlls/first/CS1701-lib.cs
+++ b/mcs/errors/dlls/first/CS1701-lib.cs
@@ -1,5 +1,4 @@
[assembly:System.Reflection.AssemblyVersionAttribute ("1.0.0.0")]
-[assembly:System.Reflection.AssemblyKeyFile("key.snk")]
public class B
{
diff --git a/mcs/errors/dlls/first/CS1702-lib.cs b/mcs/errors/dlls/first/CS1702-lib.cs
index ea06316444a..8bba78517de 100644
--- a/mcs/errors/dlls/first/CS1702-lib.cs
+++ b/mcs/errors/dlls/first/CS1702-lib.cs
@@ -1,5 +1,4 @@
[assembly:System.Reflection.AssemblyVersionAttribute ("1.0.0.0")]
-[assembly:System.Reflection.AssemblyKeyFile("key.snk")]
public class B
{
diff --git a/mcs/errors/dlls/first/CS1703-lib.cs b/mcs/errors/dlls/first/CS1703-lib.cs
index 24862062a10..bb266630fc2 100644
--- a/mcs/errors/dlls/first/CS1703-lib.cs
+++ b/mcs/errors/dlls/first/CS1703-lib.cs
@@ -1,5 +1,4 @@
[assembly:System.Reflection.AssemblyVersionAttribute ("1.1.1.0")]
-[assembly:System.Reflection.AssemblyKeyFile("key.snk")]
public class A
{
diff --git a/mcs/errors/dlls/first/CS1705-lib.cs b/mcs/errors/dlls/first/CS1705-lib.cs
index 7207e973d3f..967dc7f12e4 100644
--- a/mcs/errors/dlls/first/CS1705-lib.cs
+++ b/mcs/errors/dlls/first/CS1705-lib.cs
@@ -1,5 +1,4 @@
[assembly:System.Reflection.AssemblyVersionAttribute ("2.0.0.0")]
-[assembly:System.Reflection.AssemblyKeyFile("key.snk")]
public class B
{
diff --git a/mcs/errors/dlls/second/CS1701-lib.cs b/mcs/errors/dlls/second/CS1701-lib.cs
index d877923feb3..9fe1b1f0062 100644
--- a/mcs/errors/dlls/second/CS1701-lib.cs
+++ b/mcs/errors/dlls/second/CS1701-lib.cs
@@ -1,5 +1,4 @@
[assembly:System.Reflection.AssemblyVersionAttribute ("2.0.1.0")]
-[assembly:System.Reflection.AssemblyKeyFile("key.snk")]
public class B
{
diff --git a/mcs/errors/dlls/second/CS1702-lib.cs b/mcs/errors/dlls/second/CS1702-lib.cs
index 56196aee3a9..5e3513f1207 100644
--- a/mcs/errors/dlls/second/CS1702-lib.cs
+++ b/mcs/errors/dlls/second/CS1702-lib.cs
@@ -1,5 +1,4 @@
[assembly:System.Reflection.AssemblyVersionAttribute ("1.0.1.0")]
-[assembly:System.Reflection.AssemblyKeyFile("key.snk")]
public class B
{
diff --git a/mcs/errors/dlls/second/CS1703-lib.cs b/mcs/errors/dlls/second/CS1703-lib.cs
index 474172b3865..62675d98e9f 100644
--- a/mcs/errors/dlls/second/CS1703-lib.cs
+++ b/mcs/errors/dlls/second/CS1703-lib.cs
@@ -1,5 +1,4 @@
[assembly:System.Reflection.AssemblyVersionAttribute ("1.2.1.0")]
-[assembly:System.Reflection.AssemblyKeyFile("key.snk")]
public class A
{
diff --git a/mcs/errors/dlls/second/CS1705-lib.cs b/mcs/errors/dlls/second/CS1705-lib.cs
index ea06316444a..8bba78517de 100644
--- a/mcs/errors/dlls/second/CS1705-lib.cs
+++ b/mcs/errors/dlls/second/CS1705-lib.cs
@@ -1,5 +1,4 @@
[assembly:System.Reflection.AssemblyVersionAttribute ("1.0.0.0")]
-[assembly:System.Reflection.AssemblyKeyFile("key.snk")]
public class B
{
diff --git a/mcs/mcs/Makefile b/mcs/mcs/Makefile
index 9c4b6a172a0..dbd71a3d581 100644
--- a/mcs/mcs/Makefile
+++ b/mcs/mcs/Makefile
@@ -6,26 +6,15 @@ thisdir := mcs
SUBDIRS :=
include ../build/rules.make
+PROGRAM = mcs.exe
+
EXTRA_DISTFILES = \
mcs.csproj \
mcs.sln \
cs-parser.jay \
mcs.exe.sources
-ifeq (basic, $(PROFILE))
-LOCAL_MCS_FLAGS += -r:System.dll -r:System.Core.dll -r:System.Xml.dll -debug
-
-PROGRAM = basic.exe
-sourcefile = mcs.exe.sources
-else
-LIB_REFS = System System.Core System.Xml
-
-PROGRAM_USE_INTERMEDIATE_FILE = true
-PROGRAM = mcs.exe
-the_libdir = $(topdir)/class/lib/build/
-LOCAL_MCS_FLAGS += -debug
-endif
-
+LIB_REFS = System.Core System.Xml System
LOCAL_MCS_FLAGS += -d:STATIC,NO_SYMBOL_WRITER,NO_AUTHENTICODE
ifndef NO_THREAD_ABORT
@@ -38,10 +27,6 @@ endif
LOCAL_MCS_FLAGS += $(REFERENCE_SOURCES_FLAGS)
-PROGRAM_INSTALL_DIR = $(mono_libdir)/mono/4.5
-
-PROGRAM_COMPILE = $(BOOT_COMPILE)
-
BUILT_SOURCES = cs-parser.cs
CLEAN_FILES += y.output
diff --git a/mcs/nunit24/ClientUtilities/util/Makefile b/mcs/nunit24/ClientUtilities/util/Makefile
index 7a291b287a7..ae488f6c4f3 100644
--- a/mcs/nunit24/ClientUtilities/util/Makefile
+++ b/mcs/nunit24/ClientUtilities/util/Makefile
@@ -5,7 +5,7 @@ include ../../../build/rules.make
LIBRARY = nunit.util.dll
LIBRARY_SNK = $(topdir)/nunit24/nunit.snk
-LOCAL_MCS_FLAGS= /resource:Transform.resources,NUnit.Util.Transform.resources /d:MONO /d:StronglyNamedAssembly /publicsign -warn:1
+LOCAL_MCS_FLAGS= /resource:Transform.resources,NUnit.Util.Transform.resources /d:MONO /d:StronglyNamedAssembly /publicsign -warn:1 /keyfile:../../nunit.snk
LIB_REFS = nunit.core nunit.core.interfaces System System.Xml System.Runtime.Remoting
NO_TEST = yo
diff --git a/mcs/nunit24/ConsoleRunner/nunit-console/Makefile b/mcs/nunit24/ConsoleRunner/nunit-console/Makefile
index b72165aba26..7dc5339e987 100644
--- a/mcs/nunit24/ConsoleRunner/nunit-console/Makefile
+++ b/mcs/nunit24/ConsoleRunner/nunit-console/Makefile
@@ -5,7 +5,7 @@ include ../../../build/rules.make
LIBRARY = nunit-console-runner.dll
LIBRARY_SNK = $(topdir)/nunit24/nunit.snk
-LOCAL_MCS_FLAGS= /d:MONO /d:StronglyNamedAssembly /publicsign
+LOCAL_MCS_FLAGS= /d:MONO /d:StronglyNamedAssembly /publicsign /keyfile:../../nunit.snk
LIB_REFS = nunit.core nunit.core.interfaces nunit.util System System.Xml
NO_TEST = yo
diff --git a/mcs/nunit24/NUnitCore/core/Makefile b/mcs/nunit24/NUnitCore/core/Makefile
index 9c7c76c56f3..13001289031 100644
--- a/mcs/nunit24/NUnitCore/core/Makefile
+++ b/mcs/nunit24/NUnitCore/core/Makefile
@@ -5,7 +5,7 @@ include ../../../build/rules.make
LIBRARY = nunit.core.dll
LIBRARY_SNK = $(topdir)/nunit24/nunit.snk
-LOCAL_MCS_FLAGS = /d:StronglyNamedAssembly -warn:1 /publicsign
+LOCAL_MCS_FLAGS = /d:StronglyNamedAssembly -warn:1 /publicsign /keyfile:../../nunit.snk
LIB_REFS = nunit.framework nunit.core.interfaces System
NO_TEST = yo
diff --git a/mcs/nunit24/NUnitCore/interfaces/Makefile b/mcs/nunit24/NUnitCore/interfaces/Makefile
index 592ce5bc160..858f051d3cd 100644
--- a/mcs/nunit24/NUnitCore/interfaces/Makefile
+++ b/mcs/nunit24/NUnitCore/interfaces/Makefile
@@ -5,7 +5,7 @@ include ../../../build/rules.make
LIBRARY = nunit.core.interfaces.dll
LIBRARY_SNK = $(topdir)/nunit24/nunit.snk
-LOCAL_MCS_FLAGS= /d:StronglyNamedAssembly /publicsign
+LOCAL_MCS_FLAGS= /d:StronglyNamedAssembly /publicsign /keyfile:../../nunit.snk
LIB_REFS = nunit.framework System
NO_TEST = yo
diff --git a/mcs/nunit24/NUnitExtensions/core/Makefile b/mcs/nunit24/NUnitExtensions/core/Makefile
index 9e3ba945a67..11b5e6ba331 100644
--- a/mcs/nunit24/NUnitExtensions/core/Makefile
+++ b/mcs/nunit24/NUnitExtensions/core/Makefile
@@ -5,7 +5,7 @@ include ../../../build/rules.make
LIBRARY = nunit.core.extensions.dll
LIBRARY_SNK = $(topdir)/nunit24/nunit.snk
-LIB_MCS_FLAGS = /d:StronglyNamedAssembly /publicsign
+LIB_MCS_FLAGS = /d:StronglyNamedAssembly /publicsign /keyfile:../../nunit.snk
LIB_REFS = nunit.core nunit.core.interfaces System.Xml System
NO_TEST = yo
diff --git a/mcs/nunit24/NUnitExtensions/framework/Makefile b/mcs/nunit24/NUnitExtensions/framework/Makefile
index 7cd03514e37..16d57681ccd 100644
--- a/mcs/nunit24/NUnitExtensions/framework/Makefile
+++ b/mcs/nunit24/NUnitExtensions/framework/Makefile
@@ -5,7 +5,7 @@ include ../../../build/rules.make
LIBRARY = nunit.framework.extensions.dll
LIBRARY_SNK = $(topdir)/nunit24/nunit.snk
-LIB_MCS_FLAGS = /d:StronglyNamedAssembly /publicsign
+LIB_MCS_FLAGS = /d:StronglyNamedAssembly /publicsign /keyfile:../../nunit.snk
LIB_REFS = System.Xml System
NO_TEST = yo
diff --git a/mcs/nunit24/NUnitFramework/framework/Makefile b/mcs/nunit24/NUnitFramework/framework/Makefile
index a8c8440f465..e302eb23657 100644
--- a/mcs/nunit24/NUnitFramework/framework/Makefile
+++ b/mcs/nunit24/NUnitFramework/framework/Makefile
@@ -6,7 +6,7 @@ LIBRARY = NUnit.Framework.dll
LIBRARY_NAME = nunit.framework.dll
LIBRARY_SNK = $(topdir)/nunit24/nunit.snk
-LIB_MCS_FLAGS = /d:StronglyNamedAssembly -warn:1 /publicsign
+LIB_MCS_FLAGS = /d:StronglyNamedAssembly -warn:1 /publicsign /keyfile:../../nunit.snk
LIB_REFS = System.Xml System
NO_TEST = yo
diff --git a/mcs/nunit24/NUnitMocks/mocks/Makefile b/mcs/nunit24/NUnitMocks/mocks/Makefile
index 0c6ab3ca272..d411647b4e5 100644
--- a/mcs/nunit24/NUnitMocks/mocks/Makefile
+++ b/mcs/nunit24/NUnitMocks/mocks/Makefile
@@ -5,7 +5,7 @@ include ../../../build/rules.make
LIBRARY = nunit.mocks.dll
LIBRARY_SNK = $(topdir)/nunit24/nunit.snk
-LOCAL_MCS_FLAGS= /d:StronglyNamedAssembly /publicsign
+LOCAL_MCS_FLAGS= /d:StronglyNamedAssembly /publicsign /keyfile:../../nunit.snk
LIB_REFS = nunit.framework System
NO_TEST = yo
diff --git a/mcs/packages/.gitignore b/mcs/packages/.gitignore
new file mode 100644
index 00000000000..5264e07d2df
--- /dev/null
+++ b/mcs/packages/.gitignore
@@ -0,0 +1 @@
+Microsoft.Net.Compilers* \ No newline at end of file
diff --git a/mcs/packages/Makefile b/mcs/packages/Makefile
new file mode 100644
index 00000000000..5b3cc08cacf
--- /dev/null
+++ b/mcs/packages/Makefile
@@ -0,0 +1,25 @@
+thisdir = packages
+include ../build/rules.make
+
+ROSLYN_CSC_DIR = $(dir $(CSC_LOCATION))
+
+ifeq ($(PROFILE), $(DEFAULT_PROFILE))
+
+TARGET_DIR = $(DESTDIR)$(mono_libdir)/mono/$(FRAMEWORK_VERSION)
+
+install-local:
+ $(INSTALL_LIB) $(ROSLYN_CSC_DIR)/csc.exe $(TARGET_DIR)
+ $(INSTALL_LIB) $(ROSLYN_CSC_DIR)/csc.rsp $(TARGET_DIR)
+ $(INSTALL_LIB) $(ROSLYN_CSC_DIR)/csc.exe.config $(TARGET_DIR)
+ $(INSTALL_LIB) $(ROSLYN_CSC_DIR)/Microsoft.CodeAnalysis.CSharp.dll $(TARGET_DIR)
+ $(INSTALL_LIB) $(ROSLYN_CSC_DIR)/Microsoft.CodeAnalysis.dll $(TARGET_DIR)
+ $(INSTALL_LIB) $(ROSLYN_CSC_DIR)/System.Collections.Immutable.dll $(TARGET_DIR)
+ $(INSTALL_LIB) $(ROSLYN_CSC_DIR)/System.Reflection.Metadata.dll $(TARGET_DIR)
+
+ $(INSTALL_LIB) $(ROSLYN_CSC_DIR)/csc.exe$(PLATFORM_AOT_SUFFIX) $(TARGET_DIR)
+ $(INSTALL_LIB) $(ROSLYN_CSC_DIR)/System.Reflection.Metadata.dll$(PLATFORM_AOT_SUFFIX) $(TARGET_DIR)
+endif
+
+
+dist-local: dist-default
+
diff --git a/mcs/tests/Makefile b/mcs/tests/Makefile
index a149e2eb536..1fabf7cf8cc 100644
--- a/mcs/tests/Makefile
+++ b/mcs/tests/Makefile
@@ -54,7 +54,7 @@ DEFINES = -compiler-options:"-d:NET_4_0;NET_4_5 -debug"
endif
LOCAL_RUNTIME_FLAGS = --verify-all
-COMPILER = $(topdir)/class/lib/$(BUILD_TOOLS_PROFILE)/mcs.exe
+COMPILER = $(topdir)/class/lib/$(PROFILE)/mcs.exe
TESTER = MONO_RUNTIME='$(RUNTIME)' $(TEST_RUNTIME) $(RUNTIME_FLAGS) $(LOCAL_RUNTIME_FLAGS) $(topdir)/class/lib/$(PROFILE)/compiler-tester.exe
TEST_ILS := $(wildcard *-lib.il)
@@ -95,11 +95,13 @@ csproj-local:
%-lib.dll: %-lib.il
$(ILASM) /dll /out:$@ $<
+CSCOMPILE_UTIL = $(CSCOMPILE) -noconfig -nologo -r:$(topdir)/class/lib/$(PROFILE)/mscorlib.dll
+
setup:
- $(CSCOMPILE) -t:library dlls/test-679-2/test-679-lib-2.cs
- $(CSCOMPILE) -t:library dlls/test-679-1/test-679-lib.cs -r:dlls/test-679-2/test-679-lib-2.dll
- $(CSCOMPILE) -t:library dlls/test-939-common.cs -keyfile:key.snk -publicsign
- $(CSCOMPILE) -t:library dlls/test-939-1/test-939-lib.cs -keyfile:key.snk -publicsign
- $(CSCOMPILE) -t:library dlls/test-939-1/test-939-ref.cs -r:dlls/test-939-1/test-939-lib.dll -keyfile:key.snk -publicsign
- $(CSCOMPILE) -t:library dlls/test-939-2/test-939-lib.cs -r:dlls/test-939-common.dll -keyfile:key.snk -publicsign
+ $(CSCOMPILE_UTIL) -t:library dlls/test-679-2/test-679-lib-2.cs -out:dlls/test-679-2/test-679-lib-2.dll
+ $(CSCOMPILE_UTIL) -t:library dlls/test-679-1/test-679-lib.cs -r:dlls/test-679-2/test-679-lib-2.dll -out:dlls/test-679-1/test-679-lib.dll
+ $(CSCOMPILE_UTIL) -t:library dlls/test-939-common.cs -keyfile:key.snk -publicsign -out:dlls/test-939-common.dll
+ $(CSCOMPILE_UTIL) -t:library dlls/test-939-1/test-939-lib.cs -keyfile:key.snk -publicsign -out:dlls/test-939-1/test-939-lib.dll
+ $(CSCOMPILE_UTIL) -t:library dlls/test-939-1/test-939-ref.cs -r:dlls/test-939-1/test-939-lib.dll -keyfile:key.snk -publicsign -out:dlls/test-939-1/test-939-ref.dll
+ $(CSCOMPILE_UTIL) -t:library dlls/test-939-2/test-939-lib.cs -r:dlls/test-939-common.dll -keyfile:key.snk -publicsign -out:dlls/test-939-2/test-939-lib.dll
$(ILASM) -dll dlls/test-883.il
diff --git a/mcs/tools/cil-stringreplacer/cil-stringreplacer.cs b/mcs/tools/cil-stringreplacer/cil-stringreplacer.cs
index a7803c0ea13..20dc653526a 100644
--- a/mcs/tools/cil-stringreplacer/cil-stringreplacer.cs
+++ b/mcs/tools/cil-stringreplacer/cil-stringreplacer.cs
@@ -100,14 +100,29 @@ public class Program
static void RewriteAssembly (string assemblyLocation, Dictionary<string, string> resourcesStrings, CmdOptions options)
{
- var readerParameters = new ReaderParameters { ReadSymbols = true, ReadWrite = true };
+ Stream pdbSymbols = null;
+
+ var debugSymbols = Path.ChangeExtension (assemblyLocation, "pdb");
+ if (File.Exists (debugSymbols))
+ pdbSymbols = File.Open (debugSymbols, FileMode.Open, FileAccess.ReadWrite);
+
+ var readerParameters = new ReaderParameters {
+ ReadWrite = true,
+ };
+
+ if (pdbSymbols != null) {
+ readerParameters.ReadSymbols = true;
+ readerParameters.SymbolReaderProvider = new PortablePdbReaderProvider ();
+ readerParameters.SymbolStream = pdbSymbols;
+ }
+
using (var assembly = AssemblyDefinition.ReadAssembly (assemblyLocation, readerParameters)) {
foreach (var module in assembly.Modules) {
foreach (var type in module.GetTypes ()) {
foreach (var method in type.Methods) {
if (!method.HasBody)
continue;
-
+
foreach (var instr in method.Body.Instructions) {
if (instr.OpCode != OpCodes.Ldstr)
continue;
@@ -125,9 +140,19 @@ public class Program
}
}
- var writerParameters = new WriterParameters { WriteSymbols = true };
+ var writerParameters = new WriterParameters ();
+
+ if (pdbSymbols != null) {
+ writerParameters.WriteSymbols = true;
+ writerParameters.SymbolStream = pdbSymbols;
+ writerParameters.SymbolWriterProvider = new PortablePdbWriterProvider ();
+ pdbSymbols.Seek (0, SeekOrigin.Begin);
+ }
+
assembly.Write (writerParameters);
}
+
+ pdbSymbols?.Dispose ();
}
static bool LoadGetResourceStrings (Dictionary<string, string> resourcesStrings, CmdOptions options)
diff --git a/mcs/tools/mdoc/Test/en.expected-dropns-classic-v1/index.xml b/mcs/tools/mdoc/Test/en.expected-dropns-classic-v1/index.xml
index 330a3895e2d..6ace9bba70a 100644
--- a/mcs/tools/mdoc/Test/en.expected-dropns-classic-v1/index.xml
+++ b/mcs/tools/mdoc/Test/en.expected-dropns-classic-v1/index.xml
@@ -6,6 +6,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
@@ -16,6 +19,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
diff --git a/mcs/tools/mdoc/Test/en.expected-dropns-classic-withsecondary/index.xml b/mcs/tools/mdoc/Test/en.expected-dropns-classic-withsecondary/index.xml
index 3620aa8d0aa..8d2d0a25252 100644
--- a/mcs/tools/mdoc/Test/en.expected-dropns-classic-withsecondary/index.xml
+++ b/mcs/tools/mdoc/Test/en.expected-dropns-classic-withsecondary/index.xml
@@ -6,6 +6,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
@@ -16,6 +19,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
@@ -26,6 +32,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
diff --git a/mcs/tools/mdoc/Test/en.expected-dropns-delete/index.xml b/mcs/tools/mdoc/Test/en.expected-dropns-delete/index.xml
index 02836fe9713..01c1203dbc7 100644
--- a/mcs/tools/mdoc/Test/en.expected-dropns-delete/index.xml
+++ b/mcs/tools/mdoc/Test/en.expected-dropns-delete/index.xml
@@ -6,6 +6,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
@@ -16,6 +19,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
diff --git a/mcs/tools/mdoc/Test/en.expected-dropns-multi-withexisting/index.xml b/mcs/tools/mdoc/Test/en.expected-dropns-multi-withexisting/index.xml
index 734bd3da1a4..e934f2391b9 100644
--- a/mcs/tools/mdoc/Test/en.expected-dropns-multi-withexisting/index.xml
+++ b/mcs/tools/mdoc/Test/en.expected-dropns-multi-withexisting/index.xml
@@ -6,6 +6,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
@@ -16,6 +19,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
@@ -26,6 +32,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
@@ -36,6 +45,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
diff --git a/mcs/tools/mdoc/Test/en.expected-dropns-multi/index.xml b/mcs/tools/mdoc/Test/en.expected-dropns-multi/index.xml
index b8345d02166..bb608441b24 100644
--- a/mcs/tools/mdoc/Test/en.expected-dropns-multi/index.xml
+++ b/mcs/tools/mdoc/Test/en.expected-dropns-multi/index.xml
@@ -6,6 +6,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
@@ -16,6 +19,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
@@ -26,6 +32,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
@@ -36,6 +45,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
diff --git a/mcs/tools/mdoc/Test/en.expected-enumerations/index.xml b/mcs/tools/mdoc/Test/en.expected-enumerations/index.xml
index d46426cc737..0d96961ff0f 100644
--- a/mcs/tools/mdoc/Test/en.expected-enumerations/index.xml
+++ b/mcs/tools/mdoc/Test/en.expected-enumerations/index.xml
@@ -6,6 +6,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
diff --git a/mcs/tools/mdoc/Test/en.expected-internal-interface/index.xml b/mcs/tools/mdoc/Test/en.expected-internal-interface/index.xml
index 5b49f3c71d2..64281836158 100644
--- a/mcs/tools/mdoc/Test/en.expected-internal-interface/index.xml
+++ b/mcs/tools/mdoc/Test/en.expected-internal-interface/index.xml
@@ -6,6 +6,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
diff --git a/mcs/tools/mdoc/Test/en.expected.delete/Mono.DocTest.Generic/Extensions.xml b/mcs/tools/mdoc/Test/en.expected.delete/Mono.DocTest.Generic/Extensions.xml
index 8f7e6658f1f..c773879f2d2 100644
--- a/mcs/tools/mdoc/Test/en.expected.delete/Mono.DocTest.Generic/Extensions.xml
+++ b/mcs/tools/mdoc/Test/en.expected.delete/Mono.DocTest.Generic/Extensions.xml
@@ -103,6 +103,11 @@
<MemberSignature Language="C#" Value="public static System.Collections.Generic.IEnumerable&lt;T&gt; ToEnumerable&lt;T&gt; (this T self);" />
<MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Collections.Generic.IEnumerable`1&lt;!!T&gt; ToEnumerable&lt;T&gt;(!!T self) cil managed" />
<MemberType>Method</MemberType>
+ <Attributes>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.IteratorStateMachine(typeof(Mono.DocTest.Generic.Extensions/&lt;ToEnumerable&gt;d__0`1))</AttributeName>
+ </Attribute>
+ </Attributes>
<ReturnValue>
<ReturnType>System.Collections.Generic.IEnumerable&lt;T&gt;</ReturnType>
</ReturnValue>
diff --git a/mcs/tools/mdoc/Test/en.expected.delete/Mono.DocTest.Generic/MyList`1+Helper`2.xml b/mcs/tools/mdoc/Test/en.expected.delete/Mono.DocTest.Generic/MyList`1+Helper`2.xml
index 41b89f34f99..8dc4b7a4efb 100644
--- a/mcs/tools/mdoc/Test/en.expected.delete/Mono.DocTest.Generic/MyList`1+Helper`2.xml
+++ b/mcs/tools/mdoc/Test/en.expected.delete/Mono.DocTest.Generic/MyList`1+Helper`2.xml
@@ -5,7 +5,13 @@
<AssemblyName>DocTest</AssemblyName>
</AssemblyInfo>
<TypeParameters>
- <TypeParameter Name="T" />
+ <TypeParameter Name="T">
+ <Attributes>
+ <Attribute>
+ <AttributeName>Mono.DocTest.Doc("Type Parameter!")</AttributeName>
+ </Attribute>
+ </Attributes>
+ </TypeParameter>
<TypeParameter Name="U" />
<TypeParameter Name="V" />
</TypeParameters>
diff --git a/mcs/tools/mdoc/Test/en.expected.delete/index.xml b/mcs/tools/mdoc/Test/en.expected.delete/index.xml
index 3bf5e2463bb..dff3909ac39 100644
--- a/mcs/tools/mdoc/Test/en.expected.delete/index.xml
+++ b/mcs/tools/mdoc/Test/en.expected.delete/index.xml
@@ -6,6 +6,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
diff --git a/mcs/tools/mdoc/Test/en.expected.importecmadoc/index.xml b/mcs/tools/mdoc/Test/en.expected.importecmadoc/index.xml
index 13ad1ddd850..089b973a19a 100644
--- a/mcs/tools/mdoc/Test/en.expected.importecmadoc/index.xml
+++ b/mcs/tools/mdoc/Test/en.expected.importecmadoc/index.xml
@@ -6,6 +6,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
diff --git a/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest.Generic/Extensions.xml b/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest.Generic/Extensions.xml
index a6e2b67d056..f2381d66601 100644
--- a/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest.Generic/Extensions.xml
+++ b/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest.Generic/Extensions.xml
@@ -89,8 +89,8 @@
<param name="list">To be added.</param>
<summary>
<see cref="T:System.Collections.Generic.IEnumerable{System.Int32}" />
- extension method.
- </summary>
+ extension method.
+ </summary>
<returns>To be added.</returns>
<remarks>
<c>M:Mono.DocTest.Generic.Extensions.ToDouble</c>
@@ -122,7 +122,7 @@
<param name="val">To be added.</param>
<summary>
<see cref="T:Mono.DocTest.Generic.IFoo`1" /> extension method.
- </summary>
+ </summary>
<returns>To be added.</returns>
<remarks>
<c>M:Mono.DocTest.Generic.Extensions.ToDouble</c>
@@ -136,6 +136,11 @@
<AssemblyInfo>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
+ <Attributes>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.IteratorStateMachine(typeof(Mono.DocTest.Generic.Extensions/&lt;ToEnumerable&gt;d__0`1))</AttributeName>
+ </Attribute>
+ </Attributes>
<ReturnValue>
<ReturnType>System.Collections.Generic.IEnumerable&lt;T&gt;</ReturnType>
</ReturnValue>
diff --git a/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1+Helper`2.xml b/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1+Helper`2.xml
index bd629020743..84396c3da6f 100644
--- a/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1+Helper`2.xml
+++ b/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest.Generic/MyList`1+Helper`2.xml
@@ -6,7 +6,13 @@
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<TypeParameters>
- <TypeParameter Name="T" />
+ <TypeParameter Name="T">
+ <Attributes>
+ <Attribute>
+ <AttributeName>Mono.DocTest.Doc("Type Parameter!")</AttributeName>
+ </Attribute>
+ </Attributes>
+ </TypeParameter>
<TypeParameter Name="U" />
<TypeParameter Name="V" />
</TypeParameters>
diff --git a/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/Color.xml b/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/Color.xml
index 690987bc0a8..32e81043131 100644
--- a/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/Color.xml
+++ b/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/Color.xml
@@ -12,8 +12,8 @@
<summary>Possible colors</summary>
<remarks>
<see cref="T:Mono.DocTest.Color" />.
- Namespace Test: [<see cref="N:Mono.DocTest" />]
- </remarks>
+ Namespace Test: [<see cref="N:Mono.DocTest" />]
+ </remarks>
</Docs>
<Members>
<Member MemberName="AnotherGreen">
diff --git a/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml b/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml
index 01a74c3c6c0..71d0ed8a7e8 100644
--- a/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml
+++ b/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/DocAttribute.xml
@@ -18,8 +18,8 @@
<summary>To be added.</summary>
<remarks>
<para>
- cref=<c>T:Mono.DocTest.DocAttribute</c>.
- </para>
+ cref=<c>T:Mono.DocTest.DocAttribute</c>.
+ </para>
<format type="text/html">
<table width="100%">
<tr>
diff --git a/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/Widget.xml b/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/Widget.xml
index b465e35003e..b663e801aa1 100644
--- a/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/Widget.xml
+++ b/mcs/tools/mdoc/Test/en.expected.importslashdoc/Mono.DocTest/Widget.xml
@@ -436,7 +436,9 @@
<param name="b">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
- <remarks>To be added.</remarks>
+ <remarks>
+ <c>M:Mono.DocTest.Widget.Dynamic0(System.Object,System.Object)</c>
+ </remarks>
<exception cref="T:System.ArgumentException">To be added; from:
<see cref="M:System.Linq.Expressions.Error.TypeMustBeDerivedFromSystemDelegate" /></exception>
</Docs>
@@ -458,7 +460,9 @@
<param name="value">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
- <remarks>To be added.</remarks>
+ <remarks>
+ <c>M:Mono.DocTest.Widget.Dynamic1(System.Collections.Generic.Dictionary{System.Object,System.Object})</c>
+ </remarks>
</Docs>
</Member>
<Member MemberName="Dynamic2">
@@ -478,7 +482,9 @@
<param name="value">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
- <remarks>To be added.</remarks>
+ <remarks>
+ <c>M:Mono.DocTest.Widget.Dynamic2(System.Func{System.String,System.Object})</c>
+ </remarks>
</Docs>
</Member>
<Member MemberName="Dynamic3">
@@ -498,7 +504,9 @@
<param name="value">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
- <remarks>To be added.</remarks>
+ <remarks>
+ <c>M:Mono.DocTest.Widget.Dynamic3(System.Func{System.Func{System.String,System.Object},System.Func{System.Object,System.String}})</c>
+ </remarks>
</Docs>
</Member>
<Member MemberName="DynamicE1">
diff --git a/mcs/tools/mdoc/Test/en.expected.importslashdoc/System/Environment.xml b/mcs/tools/mdoc/Test/en.expected.importslashdoc/System/Environment.xml
index b1dd1908c0a..6c991f5db8e 100644
--- a/mcs/tools/mdoc/Test/en.expected.importslashdoc/System/Environment.xml
+++ b/mcs/tools/mdoc/Test/en.expected.importslashdoc/System/Environment.xml
@@ -31,8 +31,8 @@
</Parameters>
<Docs>
<param name="folder">
- A <see cref="T:System.Environment+SpecialFolder" /> instance.
- </param>
+ A <see cref="T:System.Environment+SpecialFolder" /> instance.
+ </param>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>
diff --git a/mcs/tools/mdoc/Test/en.expected.importslashdoc/index.xml b/mcs/tools/mdoc/Test/en.expected.importslashdoc/index.xml
index 1ce623fffb2..054ff209c8d 100644
--- a/mcs/tools/mdoc/Test/en.expected.importslashdoc/index.xml
+++ b/mcs/tools/mdoc/Test/en.expected.importslashdoc/index.xml
@@ -6,6 +6,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
@@ -130,8 +133,8 @@
<param name="list">To be added.</param>
<summary>
<see cref="T:System.Collections.Generic.IEnumerable{System.Int32}" />
- extension method.
- </summary>
+ extension method.
+ </summary>
</Docs>
<Link Type="Mono.DocTest.Generic.Extensions" Member="M:Mono.DocTest.Generic.Extensions.ToDouble(System.Collections.Generic.IEnumerable{System.Int32})" />
</Member>
@@ -162,7 +165,7 @@
<param name="val">To be added.</param>
<summary>
<see cref="T:Mono.DocTest.Generic.IFoo`1" /> extension method.
- </summary>
+ </summary>
</Docs>
<Link Type="Mono.DocTest.Generic.Extensions" Member="M:Mono.DocTest.Generic.Extensions.ToDouble``1(``0)" />
</Member>
diff --git a/mcs/tools/mdoc/Test/en.expected.since/Mono.DocTest.Generic/Extensions.xml b/mcs/tools/mdoc/Test/en.expected.since/Mono.DocTest.Generic/Extensions.xml
index 90164c97b0f..3a838fb2cdc 100644
--- a/mcs/tools/mdoc/Test/en.expected.since/Mono.DocTest.Generic/Extensions.xml
+++ b/mcs/tools/mdoc/Test/en.expected.since/Mono.DocTest.Generic/Extensions.xml
@@ -125,6 +125,11 @@
<AssemblyVersion>0.0.0.0</AssemblyVersion>
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
+ <Attributes>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.IteratorStateMachine(typeof(Mono.DocTest.Generic.Extensions/&lt;ToEnumerable&gt;d__0`1))</AttributeName>
+ </Attribute>
+ </Attributes>
<ReturnValue>
<ReturnType>System.Collections.Generic.IEnumerable&lt;T&gt;</ReturnType>
</ReturnValue>
diff --git a/mcs/tools/mdoc/Test/en.expected.since/Mono.DocTest.Generic/MyList`1+Helper`2.xml b/mcs/tools/mdoc/Test/en.expected.since/Mono.DocTest.Generic/MyList`1+Helper`2.xml
index dcb2a375223..a8c683f778b 100644
--- a/mcs/tools/mdoc/Test/en.expected.since/Mono.DocTest.Generic/MyList`1+Helper`2.xml
+++ b/mcs/tools/mdoc/Test/en.expected.since/Mono.DocTest.Generic/MyList`1+Helper`2.xml
@@ -7,7 +7,13 @@
<AssemblyVersion>2.0.0.0</AssemblyVersion>
</AssemblyInfo>
<TypeParameters>
- <TypeParameter Name="T" />
+ <TypeParameter Name="T">
+ <Attributes>
+ <Attribute>
+ <AttributeName>Mono.DocTest.Doc("Type Parameter!")</AttributeName>
+ </Attribute>
+ </Attributes>
+ </TypeParameter>
<TypeParameter Name="U" />
<TypeParameter Name="V" />
</TypeParameters>
diff --git a/mcs/tools/mdoc/Test/en.expected.since/index.xml b/mcs/tools/mdoc/Test/en.expected.since/index.xml
index 45914b3273c..31a91e00d70 100644
--- a/mcs/tools/mdoc/Test/en.expected.since/index.xml
+++ b/mcs/tools/mdoc/Test/en.expected.since/index.xml
@@ -6,6 +6,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
diff --git a/mcs/tools/mdoc/Test/en.expected/Mono.DocTest.Generic/Extensions.xml b/mcs/tools/mdoc/Test/en.expected/Mono.DocTest.Generic/Extensions.xml
index 7766049ec28..397b3d42720 100644
--- a/mcs/tools/mdoc/Test/en.expected/Mono.DocTest.Generic/Extensions.xml
+++ b/mcs/tools/mdoc/Test/en.expected/Mono.DocTest.Generic/Extensions.xml
@@ -119,6 +119,11 @@
<AssemblyInfo>
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
+ <Attributes>
+ <Attribute>
+ <AttributeName>System.Runtime.CompilerServices.IteratorStateMachine(typeof(Mono.DocTest.Generic.Extensions/&lt;ToEnumerable&gt;d__0`1))</AttributeName>
+ </Attribute>
+ </Attributes>
<ReturnValue>
<ReturnType>System.Collections.Generic.IEnumerable&lt;T&gt;</ReturnType>
</ReturnValue>
diff --git a/mcs/tools/mdoc/Test/en.expected/Mono.DocTest.Generic/MyList`1+Helper`2.xml b/mcs/tools/mdoc/Test/en.expected/Mono.DocTest.Generic/MyList`1+Helper`2.xml
index 2f389db3b87..c86584a7a44 100644
--- a/mcs/tools/mdoc/Test/en.expected/Mono.DocTest.Generic/MyList`1+Helper`2.xml
+++ b/mcs/tools/mdoc/Test/en.expected/Mono.DocTest.Generic/MyList`1+Helper`2.xml
@@ -6,7 +6,13 @@
<AssemblyVersion>0.0.0.0</AssemblyVersion>
</AssemblyInfo>
<TypeParameters>
- <TypeParameter Name="T" />
+ <TypeParameter Name="T">
+ <Attributes>
+ <Attribute>
+ <AttributeName>Mono.DocTest.Doc("Type Parameter!")</AttributeName>
+ </Attribute>
+ </Attributes>
+ </TypeParameter>
<TypeParameter Name="U" />
<TypeParameter Name="V" />
</TypeParameters>
diff --git a/mcs/tools/mdoc/Test/en.expected/index.xml b/mcs/tools/mdoc/Test/en.expected/index.xml
index 3bf5e2463bb..dff3909ac39 100644
--- a/mcs/tools/mdoc/Test/en.expected/index.xml
+++ b/mcs/tools/mdoc/Test/en.expected/index.xml
@@ -6,6 +6,9 @@
<AttributeName>System.Diagnostics.Debuggable(System.Diagnostics.DebuggableAttribute+DebuggingModes.IgnoreSymbolStoreSequencePoints)</AttributeName>
</Attribute>
<Attribute>
+ <AttributeName>System.Runtime.CompilerServices.CompilationRelaxations(8)</AttributeName>
+ </Attribute>
+ <Attribute>
<AttributeName>System.Runtime.CompilerServices.RuntimeCompatibility(WrapNonExceptionThrows=true)</AttributeName>
</Attribute>
</Attributes>
diff --git a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/Extensions.html b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/Extensions.html
index 11b496fe630..4c1aa60ff7f 100644
--- a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/Extensions.html
+++ b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/Extensions.html
@@ -255,8 +255,8 @@
<b>
<a href="#M:Mono.DocTest.Generic.Extensions.ToDouble(System.Collections.Generic.IEnumerable{System.Int32})">ToDouble</a>
</b>(<i>this</i> <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable&lt;int&gt;</a>)<nobr> : <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable&lt;double&gt;</a></nobr><blockquote><a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable&lt;int&gt;</a>
- extension method.
- </blockquote></td>
+ extension method.
+ </blockquote></td>
</tr>
<tr valign="top">
<td>
@@ -266,7 +266,7 @@
<b>
<a href="#M:Mono.DocTest.Generic.Extensions.ToDouble``1(``0)">ToDouble&lt;T&gt;</a>
</b>(<i>this</i> <i title="To be added.">T</i>)<nobr> : <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Double">double</a></nobr><blockquote><a href="../Mono.DocTest.Generic/IFoo`1.html">Mono.DocTest.Generic.IFoo`1</a> extension method.
- </blockquote></td>
+ </blockquote></td>
</tr>
<tr valign="top">
<td>
@@ -375,8 +375,8 @@
<blockquote id="M:Mono.DocTest.Generic.Extensions.ToDouble(System.Collections.Generic.IEnumerable{System.Int32}):member">
<div class="msummary">
<a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable&lt;int&gt;</a>
- extension method.
- </div>
+ extension method.
+ </div>
<h2>Syntax</h2>
<div class="Signature">public static <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable&lt;double&gt;</a> <b>ToDouble</b> (<i>this</i> <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable&lt;int&gt;</a> list)</div>
<h4 class="Subsection">Parameters</h4>
@@ -407,7 +407,7 @@
<blockquote id="M:Mono.DocTest.Generic.Extensions.ToDouble``1(``0):member">
<div class="msummary">
<a href="../Mono.DocTest.Generic/IFoo`1.html">Mono.DocTest.Generic.IFoo`1</a> extension method.
- </div>
+ </div>
<h2>Syntax</h2>
<div class="Signature">public static <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Double">double</a> <b>ToDouble&lt;T&gt;</b> (<i>this</i> <i title="To be added.">T</i> val)<br /> where T : <a href="../Mono.DocTest.Generic/IFoo`1.html">Mono.DocTest.Generic.IFoo&lt;T&gt;</a></div>
<h4 class="Subsection">Type Parameters</h4>
@@ -450,7 +450,7 @@
<div class="msummary">
<tt>System.Object</tt> extension method</div>
<h2>Syntax</h2>
- <div class="Signature">public static <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable&lt;T&gt;</a> <b>ToEnumerable&lt;T&gt;</b> (<i>this</i> <i title="To be added.">T</i> self)</div>
+ <div class="Signature">[System.Runtime.CompilerServices.IteratorStateMachine(typeof(Mono.DocTest.Generic.Extensions/&lt;ToEnumerable&gt;d__0`1))]<br />public static <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable&lt;T&gt;</a> <b>ToEnumerable&lt;T&gt;</b> (<i>this</i> <i title="To be added.">T</i> self)</div>
<h4 class="Subsection">Type Parameters</h4>
<blockquote class="SubsectionBox" id="M:Mono.DocTest.Generic.Extensions.ToEnumerable``1(``0):Type Parameters">
<dl>
diff --git a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/IFoo`1.html b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/IFoo`1.html
index a6515dded5b..8ecbbc33708 100644
--- a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/IFoo`1.html
+++ b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/IFoo`1.html
@@ -269,7 +269,7 @@
<b>
<a href="../Mono.DocTest.Generic/Extensions.html#M:Mono.DocTest.Generic.Extensions.ToDouble``1(``0)">ToDouble&lt;T&gt;</a>
</b>(<i>this</i> <a href="javascript:alert(&quot;Documentation not found.&quot;)">T</a>)<nobr> : <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Double">double</a></nobr><blockquote><a href="../Mono.DocTest.Generic/IFoo`1.html">Mono.DocTest.Generic.IFoo`1</a> extension method.
- </blockquote></td>
+ </blockquote></td>
</tr>
<tr valign="top">
<td>
diff --git a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html
index 730b8239d42..0c63c3143d9 100644
--- a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html
+++ b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`1+Helper`2.html
@@ -211,7 +211,7 @@
</p>
<div>
<h2>Syntax</h2>
- <div class="Signature" id="T:Mono.DocTest.Generic.MyList`1.Helper`2:Signature">public class <b>MyList&lt;T, U, V&gt;</b></div>
+ <div class="Signature" id="T:Mono.DocTest.Generic.MyList`1.Helper`2:Signature">public class <b>MyList&lt;[Mono.DocTest.Doc("Type Parameter!")] T, U, V&gt;</b></div>
</div>
<div class="Remarks" id="T:Mono.DocTest.Generic.MyList`1.Helper`2:Docs">
<h4 class="Subsection">Type Parameters</h4>
diff --git a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`1.html b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`1.html
index 8ec7050a350..a7b880582b2 100644
--- a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`1.html
+++ b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`1.html
@@ -430,8 +430,8 @@
<b>
<a href="../Mono.DocTest.Generic/Extensions.html#M:Mono.DocTest.Generic.Extensions.ToDouble(System.Collections.Generic.IEnumerable{System.Int32})">ToDouble</a>
</b>(<i>this</i> <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable&lt;int&gt;</a>)<nobr> : <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable&lt;double&gt;</a></nobr><blockquote><a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable&lt;int&gt;</a>
- extension method.
- </blockquote></td>
+ extension method.
+ </blockquote></td>
</tr>
<tr valign="top">
<td>
diff --git a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`2.html b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`2.html
index 453b4d5d935..3cb50923fdd 100644
--- a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`2.html
+++ b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest.Generic/MyList`2.html
@@ -594,8 +594,8 @@
<b>
<a href="../Mono.DocTest.Generic/Extensions.html#M:Mono.DocTest.Generic.Extensions.ToDouble(System.Collections.Generic.IEnumerable{System.Int32})">ToDouble</a>
</b>(<i>this</i> <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable&lt;int&gt;</a>)<nobr> : <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable&lt;double&gt;</a></nobr><blockquote><a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Collections.Generic.IEnumerable`1">IEnumerable&lt;int&gt;</a>
- extension method.
- </blockquote></td>
+ extension method.
+ </blockquote></td>
</tr>
<tr valign="top">
<td>
@@ -605,7 +605,7 @@
<b>
<a href="../Mono.DocTest.Generic/Extensions.html#M:Mono.DocTest.Generic.Extensions.ToDouble``1(``0)">ToDouble&lt;T&gt;</a>
</b>(<i>this</i> <i title="To be added.">T</i>)<nobr> : <a href="http://www.go-mono.com/docs/monodoc.ashx?link=T:System.Double">double</a></nobr><blockquote><a href="../Mono.DocTest.Generic/IFoo`1.html">Mono.DocTest.Generic.IFoo`1</a> extension method.
- </blockquote></td>
+ </blockquote></td>
</tr>
<tr valign="top">
<td>
diff --git a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/Color.html b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/Color.html
index 5d9b1497690..f0653684ae4 100644
--- a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/Color.html
+++ b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/Color.html
@@ -215,8 +215,8 @@
<h2 class="Section">Remarks</h2>
<div class="SectionBox" id="T:Mono.DocTest.Color:Docs:Remarks">
<a href="../Mono.DocTest/Color.html">Mono.DocTest.Color</a>.
- Namespace Test: [<a href="../Mono.DocTest/index.html">Mono.DocTest</a>]
- </div>
+ Namespace Test: [<a href="../Mono.DocTest/index.html">Mono.DocTest</a>]
+ </div>
<h2 class="Section">Members</h2>
<div class="SectionBox" id="T:Mono.DocTest.Color:Docs:Members">
<table class="Enumeration">
diff --git a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/DocAttribute.html b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/DocAttribute.html
index 1c14d779287..b4d091ec407 100644
--- a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/DocAttribute.html
+++ b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/DocAttribute.html
@@ -217,8 +217,8 @@
<h2 class="Section">Remarks</h2>
<div class="SectionBox" id="T:Mono.DocTest.DocAttribute:Docs:Remarks">
<p>
- cref=<tt>T:Mono.DocTest.DocAttribute</tt>.
- </p>
+ cref=<tt>T:Mono.DocTest.DocAttribute</tt>.
+ </p>
<table width="100%">
<tr>
<td style="color:red">red</td>
diff --git a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/Widget.html b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/Widget.html
index f35ef5ff5f3..adcabd8a828 100644
--- a/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/Widget.html
+++ b/mcs/tools/mdoc/Test/html.expected/Mono.DocTest/Widget.html
@@ -1236,7 +1236,7 @@
</blockquote>
<h2 class="Section">Remarks</h2>
<div class="SectionBox" id="M:Mono.DocTest.Widget.Dynamic0(System.Object,System.Object):Remarks">
- <span class="NotEntered">Documentation for this section has not yet been entered.</span>
+ <tt>M:Mono.DocTest.Widget.Dynamic0(System.Object,System.Object)</tt>
</div>
<h2 class="Section">Requirements</h2>
<div class="SectionBox" id="M:Mono.DocTest.Widget.Dynamic0(System.Object,System.Object):Version Information">
@@ -1267,7 +1267,7 @@
</blockquote>
<h2 class="Section">Remarks</h2>
<div class="SectionBox" id="M:Mono.DocTest.Widget.Dynamic1(System.Collections.Generic.Dictionary{System.Object,System.String}):Remarks">
- <span class="NotEntered">Documentation for this section has not yet been entered.</span>
+ <tt>M:Mono.DocTest.Widget.Dynamic1(System.Collections.Generic.Dictionary{System.Object,System.Object})</tt>
</div>
<h2 class="Section">Requirements</h2>
<div class="SectionBox" id="M:Mono.DocTest.Widget.Dynamic1(System.Collections.Generic.Dictionary{System.Object,System.String}):Version Information">
@@ -1298,7 +1298,7 @@
</blockquote>
<h2 class="Section">Remarks</h2>
<div class="SectionBox" id="M:Mono.DocTest.Widget.Dynamic2(System.Func{System.String,System.Object}):Remarks">
- <span class="NotEntered">Documentation for this section has not yet been entered.</span>
+ <tt>M:Mono.DocTest.Widget.Dynamic2(System.Func{System.String,System.Object})</tt>
</div>
<h2 class="Section">Requirements</h2>
<div class="SectionBox" id="M:Mono.DocTest.Widget.Dynamic2(System.Func{System.String,System.Object}):Version Information">
@@ -1329,7 +1329,7 @@
</blockquote>
<h2 class="Section">Remarks</h2>
<div class="SectionBox" id="M:Mono.DocTest.Widget.Dynamic3(System.Func{System.Func{System.String,System.Object},System.Func{System.Object,System.String}}):Remarks">
- <span class="NotEntered">Documentation for this section has not yet been entered.</span>
+ <tt>M:Mono.DocTest.Widget.Dynamic3(System.Func{System.Func{System.String,System.Object},System.Func{System.Object,System.String}})</tt>
</div>
<h2 class="Section">Requirements</h2>
<div class="SectionBox" id="M:Mono.DocTest.Widget.Dynamic3(System.Func{System.Func{System.String,System.Object},System.Func{System.Object,System.String}}):Version Information">
diff --git a/mcs/tools/mdoc/Test/html.expected/System/Environment.html b/mcs/tools/mdoc/Test/html.expected/System/Environment.html
index b69e603915b..55e31fff76e 100644
--- a/mcs/tools/mdoc/Test/html.expected/System/Environment.html
+++ b/mcs/tools/mdoc/Test/html.expected/System/Environment.html
@@ -262,8 +262,8 @@
<i>folder</i>
</dt>
<dd>
- A <a href="../System/Environment+SpecialFolder.html">Environment.SpecialFolder</a> instance.
- </dd>
+ A <a href="../System/Environment+SpecialFolder.html">Environment.SpecialFolder</a> instance.
+ </dd>
</dl>
</blockquote>
<h4 class="Subsection">Returns</h4>
diff --git a/mcs/tools/mdoc/Test/msxdoc-expected.importslashdoc.xml b/mcs/tools/mdoc/Test/msxdoc-expected.importslashdoc.xml
index d40b962b4d0..5743e52613d 100644
--- a/mcs/tools/mdoc/Test/msxdoc-expected.importslashdoc.xml
+++ b/mcs/tools/mdoc/Test/msxdoc-expected.importslashdoc.xml
@@ -17,8 +17,8 @@
<summary>Possible colors</summary>
<remarks>
<see cref="T:Mono.DocTest.Color" />.
- Namespace Test: [<see cref="N:Mono.DocTest" />]
- </remarks>
+ Namespace Test: [<see cref="N:Mono.DocTest" />]
+ </remarks>
</member>
<member name="F:Mono.DocTest.Color.AnotherGreen">
<summary>To be added.</summary>
@@ -50,8 +50,8 @@
<summary>To be added.</summary>
<remarks>
<para>
- cref=<c>T:Mono.DocTest.DocAttribute</c>.
- </para>
+ cref=<c>T:Mono.DocTest.DocAttribute</c>.
+ </para>
<format type="text/html">
<table width="100%">
<tr>
@@ -473,7 +473,9 @@ class Example {
<param name="b">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
- <remarks>To be added.</remarks>
+ <remarks>
+ <c>M:Mono.DocTest.Widget.Dynamic0(System.Object,System.Object)</c>
+ </remarks>
<exception cref="T:System.ArgumentException">To be added; from:
<see cref="M:System.Linq.Expressions.Error.TypeMustBeDerivedFromSystemDelegate" /></exception>
</member>
@@ -481,19 +483,25 @@ class Example {
<param name="value">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
- <remarks>To be added.</remarks>
+ <remarks>
+ <c>M:Mono.DocTest.Widget.Dynamic1(System.Collections.Generic.Dictionary{System.Object,System.Object})</c>
+ </remarks>
</member>
<member name="M:Mono.DocTest.Widget.Dynamic2(System.Func{System.String,System.Object})">
<param name="value">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
- <remarks>To be added.</remarks>
+ <remarks>
+ <c>M:Mono.DocTest.Widget.Dynamic2(System.Func{System.String,System.Object})</c>
+ </remarks>
</member>
<member name="M:Mono.DocTest.Widget.Dynamic3(System.Func{System.Func{System.String,System.Object},System.Func{System.Object,System.String}})">
<param name="value">To be added.</param>
<summary>To be added.</summary>
<returns>To be added.</returns>
- <remarks>To be added.</remarks>
+ <remarks>
+ <c>M:Mono.DocTest.Widget.Dynamic3(System.Func{System.Func{System.String,System.Object},System.Func{System.Object,System.String}})</c>
+ </remarks>
</member>
<member name="E:Mono.DocTest.Widget.DynamicE1">
<summary>To be added.</summary>
@@ -1000,8 +1008,8 @@ class Example {
<param name="list">To be added.</param>
<summary>
<see cref="T:System.Collections.Generic.IEnumerable{System.Int32}" />
- extension method.
- </summary>
+ extension method.
+ </summary>
<returns>To be added.</returns>
<remarks>
<c>M:Mono.DocTest.Generic.Extensions.ToDouble</c>
@@ -1012,7 +1020,7 @@ class Example {
<param name="val">To be added.</param>
<summary>
<see cref="T:Mono.DocTest.Generic.IFoo`1" /> extension method.
- </summary>
+ </summary>
<returns>To be added.</returns>
<remarks>
<c>M:Mono.DocTest.Generic.Extensions.ToDouble</c>
@@ -1547,7 +1555,7 @@ class Example {
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</member>
- <member name="M:Mono.DocTest.Generic.MyList`1.Helper`2.UseT(```210T`2``21`2```210`2``21`2,```210U`2``21`2```210`2``21`2,```210V`2``21`2```210`2``21`2)">
+ <member name="M:Mono.DocTest.Generic.MyList`1.Helper`2.UseT(``21T`2``21`2,``21U`2``21`2,``21V`2``21`2)">
<param name="a">Ako</param>
<param name="b">bko</param>
<param name="c">cko</param>
@@ -1735,8 +1743,8 @@ class Example {
</member>
<member name="M:System.Environment.GetFolderPath(System.Environment+SpecialFolder)">
<param name="folder">
- A <see cref="T:System.Environment+SpecialFolder" /> instance.
- </param>
+ A <see cref="T:System.Environment+SpecialFolder" /> instance.
+ </param>
<summary>To be added.</summary>
<returns>To be added.</returns>
<remarks>
diff --git a/mcs/tools/mono-service/Makefile b/mcs/tools/mono-service/Makefile
index 84286e7f95f..cdca30fb3fb 100644
--- a/mcs/tools/mono-service/Makefile
+++ b/mcs/tools/mono-service/Makefile
@@ -8,7 +8,7 @@ PROGRAM_SNK = ../../class/mono.snk
include ../../build/executable.make
-LOCAL_MCS_FLAGS = -unsafe -publicsign
+LOCAL_MCS_FLAGS = -unsafe -publicsign -keyfile:../../class/mono.snk
LIB_REFS = System.ServiceProcess Mono.Posix System
# Copied from library.make
diff --git a/mcs/tools/mono-symbolicate/Test/symbolicate.expected b/mcs/tools/mono-symbolicate/Test/symbolicate.expected
index b93d05c7a13..63da2bd7c90 100644
--- a/mcs/tools/mono-symbolicate/Test/symbolicate.expected
+++ b/mcs/tools/mono-symbolicate/Test/symbolicate.expected
@@ -4,130 +4,130 @@ Stacktrace:
at StackTraceDumper.Main () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:9
System.Exception: Stacktrace with 2 frames
- at StackTraceDumper.<Main>m__0 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:16
+ at StackTraceDumper+<>c.<Main>b__0_0 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:16
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
Stacktrace:
- at StackTraceDumper.<Main>m__0 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:16
+ at StackTraceDumper+<>c.<Main>b__0_0 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:16
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
System.Exception: Stacktrace with 3 frames
at StackTraceDumper.ThrowException (System.String message, System.Int32 i) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:83
- at StackTraceDumper.<Main>m__1 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:18
+ at StackTraceDumper+<>c.<Main>b__0_1 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:18
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
Stacktrace:
at StackTraceDumper.ThrowException (System.String message, System.Int32 i) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:83
- at StackTraceDumper.<Main>m__1 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:18
+ at StackTraceDumper+<>c.<Main>b__0_1 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:18
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
System.Exception: Stacktrace with 4 frames
at StackTraceDumper.ThrowException (System.String message, System.Int32 i) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:83
at StackTraceDumper.ThrowException (System.String message, System.Int32 i) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:81
- at StackTraceDumper.<Main>m__2 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:20
+ at StackTraceDumper+<>c.<Main>b__0_2 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:20
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
Stacktrace:
at StackTraceDumper.ThrowException (System.String message, System.Int32 i) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:83
at StackTraceDumper.ThrowException (System.String message, System.Int32 i) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:81
- at StackTraceDumper.<Main>m__2 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:20
+ at StackTraceDumper+<>c.<Main>b__0_2 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:20
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
System.Exception: Stack frame with method overload using ref parameter
at StackTraceDumper.ThrowException (System.String& message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:75
- at StackTraceDumper.<Main>m__3 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:24
+ at StackTraceDumper+<>c.<Main>b__0_3 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:24
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
Stacktrace:
at StackTraceDumper.ThrowException (System.String& message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:75
- at StackTraceDumper.<Main>m__3 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:24
+ at StackTraceDumper+<>c.<Main>b__0_3 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:24
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
System.Exception: Stack frame with method overload using out parameter
at StackTraceDumper.ThrowException (System.String message, System.Int32& o) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:88
- at StackTraceDumper.<Main>m__4 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:29
+ at StackTraceDumper+<>c.<Main>b__0_4 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:29
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
Stacktrace:
at StackTraceDumper.ThrowException (System.String message, System.Int32& o) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:88
- at StackTraceDumper.<Main>m__4 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:29
+ at StackTraceDumper+<>c.<Main>b__0_4 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:29
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
System.Exception: Stack frame with 1 generic parameter
at StackTraceDumper.ThrowExceptionGeneric[T] (System.String message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:93
- at StackTraceDumper.<Main>m__5 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:32
+ at StackTraceDumper+<>c.<Main>b__0_5 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:32
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
Stacktrace:
at StackTraceDumper.ThrowExceptionGeneric[T] (System.String message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:93
- at StackTraceDumper.<Main>m__5 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:32
+ at StackTraceDumper+<>c.<Main>b__0_5 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:32
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
System.Exception: Stack frame with 2 generic parameters
at StackTraceDumper.ThrowExceptionGeneric[T1,T2] (System.String message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:113
- at StackTraceDumper.<Main>m__6 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:34
+ at StackTraceDumper+<>c.<Main>b__0_6 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:34
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
Stacktrace:
at StackTraceDumper.ThrowExceptionGeneric[T1,T2] (System.String message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:113
- at StackTraceDumper.<Main>m__6 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:34
+ at StackTraceDumper+<>c.<Main>b__0_6 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:34
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
System.Exception: Stack frame with generic method overload
at StackTraceDumper.ThrowExceptionGeneric[T] (T a1) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:98
- at StackTraceDumper.<Main>m__7 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:36
+ at StackTraceDumper+<>c.<Main>b__0_7 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:36
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
Stacktrace:
at StackTraceDumper.ThrowExceptionGeneric[T] (T a1) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:98
- at StackTraceDumper.<Main>m__7 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:36
+ at StackTraceDumper+<>c.<Main>b__0_7 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:36
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
System.Exception: Stack trace with inner class
at StackTraceDumper+InnerClass.ThrowException (System.String message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:119
- at StackTraceDumper.<Main>m__8 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:38
+ at StackTraceDumper+<>c.<Main>b__0_8 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:38
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
Stacktrace:
at StackTraceDumper+InnerClass.ThrowException (System.String message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:119
- at StackTraceDumper.<Main>m__8 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:38
+ at StackTraceDumper+<>c.<Main>b__0_8 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:38
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
System.Exception: Stack trace with inner generic class
at StackTraceDumper+InnerGenericClass`1[T].ThrowException (System.String message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:126
- at StackTraceDumper.<Main>m__9 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:40
+ at StackTraceDumper+<>c.<Main>b__0_9 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:40
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
Stacktrace:
at StackTraceDumper+InnerGenericClass`1[T].ThrowException (System.String message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:126
- at StackTraceDumper.<Main>m__9 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:40
+ at StackTraceDumper+<>c.<Main>b__0_9 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:40
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
Generic to string:string
System.Exception: Stack trace with inner generic class and method generic parameter
at StackTraceDumper+InnerGenericClass`1[T].ThrowException (System.String message, T arg) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:132
- at StackTraceDumper.<Main>m__A () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:42
+ at StackTraceDumper+<>c.<Main>b__0_10 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:42
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
Stacktrace:
at StackTraceDumper+InnerGenericClass`1[T].ThrowException (System.String message, T arg) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:132
- at StackTraceDumper.<Main>m__A () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:42
+ at StackTraceDumper+<>c.<Main>b__0_10 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:42
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
System.Exception: Stack trace with inner generic class and generic overload
at StackTraceDumper+InnerGenericClass`1[T].ThrowException[T1] (System.String message, T1 arg) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:137
- at StackTraceDumper.<Main>m__B () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:44
+ at StackTraceDumper+<>c.<Main>b__0_11 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:44
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
Stacktrace:
at StackTraceDumper+InnerGenericClass`1[T].ThrowException[T1] (System.String message, T1 arg) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:137
- at StackTraceDumper.<Main>m__B () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:44
+ at StackTraceDumper+<>c.<Main>b__0_11 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:44
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
System.Exception: Stack trace with 2 inner generic class and generic overload
at StackTraceDumper+InnerGenericClass`1+InnerInnerGenericClass`1[T,T2].ThrowException (T message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:143
- at StackTraceDumper.<Main>m__C () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:46
+ at StackTraceDumper+<>c.<Main>b__0_12 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:46
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
Stacktrace:
at StackTraceDumper+InnerGenericClass`1+InnerInnerGenericClass`1[T,T2].ThrowException (T message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:143
- at StackTraceDumper.<Main>m__C () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:46
+ at StackTraceDumper+<>c.<Main>b__0_12 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:46
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
System.Exception: Stack trace with 2 inner generic class and generic overload
at StackTraceDumper+InnerGenericClass`1+InnerInnerGenericClass`1[T,T2].ThrowException (T2 message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:148
- at StackTraceDumper.<Main>m__D () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:48
+ at StackTraceDumper+<>c.<Main>b__0_13 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:48
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
Stacktrace:
at StackTraceDumper+InnerGenericClass`1+InnerInnerGenericClass`1[T,T2].ThrowException (T2 message) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:148
- at StackTraceDumper.<Main>m__D () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:48
+ at StackTraceDumper+<>c.<Main>b__0_13 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:48
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
System.ArgumentNullException: Value cannot be null.
@@ -135,11 +135,11 @@ Parameter name: key
at System.ThrowHelper.ThrowArgumentNullException (System.ExceptionArgument argument) in mcs/class/referencesource/mscorlib/system/throwhelper.cs:80
at System.Collections.Generic.Dictionary`2[TKey,TValue].FindEntry (TKey key) in mcs/class/referencesource/mscorlib/system/collections/generic/dictionary.cs:299
at System.Collections.Generic.Dictionary`2[TKey,TValue].ContainsKey (TKey key) in mcs/class/referencesource/mscorlib/system/collections/generic/dictionary.cs:228
- at StackTraceDumper.<Main>m__E () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:52
+ at StackTraceDumper+<>c.<Main>b__0_14 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:52
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
Stacktrace:
at System.ThrowHelper.ThrowArgumentNullException (System.ExceptionArgument argument) in mcs/class/referencesource/mscorlib/system/throwhelper.cs:80
at System.Collections.Generic.Dictionary`2[TKey,TValue].FindEntry (TKey key) in mcs/class/referencesource/mscorlib/system/collections/generic/dictionary.cs:299
at System.Collections.Generic.Dictionary`2[TKey,TValue].ContainsKey (TKey key) in mcs/class/referencesource/mscorlib/system/collections/generic/dictionary.cs:228
- at StackTraceDumper.<Main>m__E () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:52
+ at StackTraceDumper+<>c.<Main>b__0_14 () in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:52
at StackTraceDumper.Catch (System.Action action) in mcs/tools/mono-symbolicate/Test/StackTraceDumper.cs:59
diff --git a/mcs/tools/nunit-lite/NUnitLite/Makefile b/mcs/tools/nunit-lite/NUnitLite/Makefile
index 1d448c2915a..d7dede3c72c 100644
--- a/mcs/tools/nunit-lite/NUnitLite/Makefile
+++ b/mcs/tools/nunit-lite/NUnitLite/Makefile
@@ -5,7 +5,7 @@ include ../../../build/rules.make
LIBRARY = nunitlite.dll
LIBRARY_SNK = ../../../../external/nunit-lite/NUnitLite-1.0.0/src/framework/nunit.snk
-LOCAL_MCS_FLAGS= /target:library /define:"__MOBILE__;TRACE;DEBUG;NET_4_0;CLR_4_0,NUNITLITE" /warn:4 /keyfile:$(LIBRARY_SNK)
+LOCAL_MCS_FLAGS= /target:library /define:"__MOBILE__;TRACE;DEBUG;NET_4_0;CLR_4_0,NUNITLITE" /warn:4 /keyfile:$(LIBRARY_SNK) /publicsign
LIB_REFS = System System.Xml System.Core
NO_TEST = yes
diff --git a/mono/metadata/icall.c b/mono/metadata/icall.c
index 831ea1dd40d..eeac6aca779 100644
--- a/mono/metadata/icall.c
+++ b/mono/metadata/icall.c
@@ -998,6 +998,10 @@ ves_icall_System_Runtime_CompilerServices_RuntimeHelpers_SufficientExecutionStac
// .net seems to check that at least 50% of stack is available
min_size = thread->stack_size / 2;
+ // TODO: It's not always set
+ if (!min_size)
+ return TRUE;
+
current = (guint8 *)&stack_addr;
if (current > stack_addr) {
if ((current - stack_addr) < min_size)
diff --git a/mono/mini/Makefile.am.in b/mono/mini/Makefile.am.in
index 8ca5c5c750e..675e73ad650 100755
--- a/mono/mini/Makefile.am.in
+++ b/mono/mini/Makefile.am.in
@@ -48,7 +48,6 @@ RUNTIME_EXECUTABLE = $(if $(BOEHM),$(top_builddir)/mono/mini/mono-boehm,$(top_bu
MINI_RUNTIME = MONO_PATH=$(CLASS) $(RUNTIME_EXECUTABLE)
RUNTIME_AOTCHECK = MONO_PATH="$(CLASS)$(PLATFORM_PATH_SEPARATOR)." $(RUNTIME_EXECUTABLE)
-CSC = $(mcs_topdir)/class/lib/build/mcs.exe
MCS = CSC_SDK_PATH_DISABLED= $(MINI_RUNTIME) $(CSC) -unsafe -nowarn:0162 -nologo -noconfig -r:$(CLASS)/mscorlib.dll -r:$(CLASS)/System.dll -r:$(CLASS)/System.Core.dll
ILASM = $(MINI_RUNTIME) $(CLASS)/ilasm.exe
diff --git a/mono/profiler/Makefile.am b/mono/profiler/Makefile.am
index 4f6c4acb204..73b11497d16 100644
--- a/mono/profiler/Makefile.am
+++ b/mono/profiler/Makefile.am
@@ -100,7 +100,7 @@ CLASS=$(mcs_topdir)/class/lib/$(DEFAULT_PROFILE)
with_mono_path = MONO_PATH=$(CLASS)
RUNTIME = $(with_mono_path) $(top_builddir)/runtime/mono-wrapper
-MCS = $(RUNTIME) $(mcs_topdir)/class/lib/build/mcs.exe -unsafe -nowarn:0162 -nowarn:0168 -nowarn:0219 -debug
+MCS = $(RUNTIME) $(CSC) -lib:$(CLASS) -unsafe -nologo -noconfig -nowarn:0162 -nowarn:0168 -nowarn:0219 -debug:portable
%.exe: %.cs
$(MCS) -out:$@ $<
diff --git a/mono/tests/Makefile.am b/mono/tests/Makefile.am
index 4c0ff0e63a5..b79bd1b2f15 100644
--- a/mono/tests/Makefile.am
+++ b/mono/tests/Makefile.am
@@ -54,7 +54,7 @@ if INSTALL_AOT_HYBRID
PROFILE_MCS_FLAGS = -d:MOBILE,MOBILE_LEGACY
endif
-MCS_NO_LIB = $(RUNTIME) $(mcs_topdir)/class/lib/build/mcs.exe -unsafe -debug \
+MCS_NO_LIB = $(RUNTIME) $(CSC) -unsafe -debug:portable \
-noconfig -nologo \
-nowarn:0162 -nowarn:0168 -nowarn:0219 -nowarn:0414 -nowarn:0618 \
-nowarn:0169 -nowarn:1690 -nowarn:0649 -nowarn:0612 -nowarn:3021 \
diff --git a/mono/tests/assemblyresolve/Makefile.am b/mono/tests/assemblyresolve/Makefile.am
index b7c7f472959..1d3942ffa4f 100644
--- a/mono/tests/assemblyresolve/Makefile.am
+++ b/mono/tests/assemblyresolve/Makefile.am
@@ -3,7 +3,7 @@ CLASS=$(mcs_topdir)/class/lib/$(DEFAULT_PROFILE)
with_mono_path = MONO_PATH=$(CLASS)
RUNTIME = $(top_builddir)/runtime/mono-wrapper --debug
-MCS = $(with_mono_path) $(RUNTIME) $(mcs_topdir)/class/lib/build/mcs.exe -debug:full -target:library
+MCS = $(with_mono_path) $(RUNTIME) $(CSC) -noconfig -nologo -debug:portable -target:library
if INSTALL_AOT_ONLY
prereq: aot
diff --git a/runtime/Makefile.am b/runtime/Makefile.am
index 1fe237bc345..7af06ebeee5 100644
--- a/runtime/Makefile.am
+++ b/runtime/Makefile.am
@@ -92,7 +92,7 @@ clean-local:
endif BUILD_MCS
-TEST_SUPPORT_FILES = $(tmpinst)/bin/mono $(tmpinst)/bin/ilasm $(tmpinst)/bin/mcs $(tmpinst)/bin/al
+TEST_SUPPORT_FILES = $(tmpinst)/bin/mono $(tmpinst)/bin/ilasm $(tmpinst)/bin/csc $(tmpinst)/bin/al
mcs-do-test-profiles:
cd $(mcs_topdir) && $(MAKE) NO_DIR_CHECK=1 PROFILES='$(test_profiles)' test-profiles
@@ -181,10 +181,10 @@ $(tmpinst)/bin/mono: mono-wrapper etc/mono/config
$(mkinstalldirs) $(tmpinst)/bin
cp mono-wrapper $@
-$(tmpinst)/bin/mcs: $(tmpinst)/bin/mono Makefile
+$(tmpinst)/bin/csc: $(tmpinst)/bin/mono Makefile
echo '#! /bin/sh' > $@ ; \
r=`pwd`; m=`cd $(mcs_topdir) && pwd`; \
- echo 'exec "'"$$r/$(tmpinst)/bin/mono"'" "'"$$m/class/lib/build/mcs.exe"'" "$$@"' >> $@ ; \
+ echo 'exec "'"$$r/$(tmpinst)/bin/mono"'" "'"$(CSC)"'" "$$@"' >> $@ ; \
chmod +x $@
$(tmpinst)/bin/ilasm: $(tmpinst)/bin/mono Makefile
diff --git a/scripts/.gitignore b/scripts/.gitignore
index a22d2a91ff4..6b79de7dc52 100644
--- a/scripts/.gitignore
+++ b/scripts/.gitignore
@@ -86,7 +86,7 @@
/sgen
/sgen1
/signcode
-/smcs
+/csc
/sn
/soapsuds
/sqlmetal
diff --git a/scripts/Makefile.am b/scripts/Makefile.am
index 39595455dad..6c2a338bc4a 100644
--- a/scripts/Makefile.am
+++ b/scripts/Makefile.am
@@ -36,6 +36,7 @@ bin_SCRIPTS = \
mono-test-install \
peverify \
mcs \
+ csc \
mono-package-runtime \
mono-heapviz \
$(scripts_mono_configuration_crypto)
@@ -157,6 +158,7 @@ EXTRA_DIST = \
xbuild.in \
update_submodules \
mcs.in \
+ csc.in \
dmcs.in \
mono-package-runtime \
mono-test-install \
@@ -203,6 +205,10 @@ mcs: mcs.in Makefile
$(REWRITE_COMMON) $(srcdir)/mcs.in > $@.tmp
mv -f $@.tmp $@
+csc: csc.in Makefile
+ $(REWRITE_COMMON) $(srcdir)/csc.in > $@.tmp
+ mv -f $@.tmp $@
+
dmcs: dmcs.in Makefile
$(REWRITE_COMMON) $(srcdir)/dmcs.in > $@.tmp
mv -f $@.tmp $@
diff --git a/scripts/csc.in b/scripts/csc.in
new file mode 100644
index 00000000000..c32be364ea2
--- /dev/null
+++ b/scripts/csc.in
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec @bindir@/mono $MONO_OPTIONS @mono_instdir@/4.5/csc.exe "$@"