Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: mono-1-1-12
README
These are the sources to the Mono C# compiler 
---------------------------------------------

	Read the mcs/docs/compiler.txt for an overview of the compiler.

Testing the Compiler
--------------------

	You might want to use the `make btest' in this directory to 
	have the compiler bootstrap itself, this is the basic regression
	test.

	Before commiting changes to MCS, make sure that all the tests
	in `mcs/tests' pass, and all the tests in 'mcs/errors' have the
	expected result, type:

	  cd mcs		# The top-level 'mcs' directory
	  make compiler-tests

	If you want to test the installed compiler, you can run:

	  cd mcs		# The top-level 'mcs' directory
	  make test-installed-compiler

Full Bootstrap
==============

	To finally ensure the state of the compiler, it is ideal to do
	a full bootstrap, to do this, do:

		cd mcs
		make clean;
		make
		make install

	That installs the compiler and assemblies compiled by the new compiler.

	Then, repeat that step again:

		make clean
		make

	If things work, the compiler has not added a new regression
	while building the mscorlib and the compiler itself.

Tests
=====

	When bugs are fixed, new tests must be added to the
	`mcs/tests' directory to excercise the problem and to guarantee
	that we keep the compiler in a good state.

	When an error is reported, it should be added to mcs/errors.

	We try to make the errors numbers be the same as the ones in
	Microsoft C#, if this is not possible, allocate a negative error
	number, and list it in mcs/errors/errors.txt
Something went wrong with that request. Please try again.