[mercury-users] csharp grade error in mdb.browse.cs

Peter Wang novalazy at gmail.com
Sat Nov 27 08:53:24 AEDT 2010

On 2010-11-26, Jeff Thompson <jeff at thefirst.org> wrote:
> Hello.  I'm on OpenSolaris with mono 2.8 installed. I'm compiling
> rotd-2010-11-25 with
> make install LIBGRADES=csharp
> It goes well until compiling the browser:
> ** Error making `mer_browser.dll'.
> Mercury/css/mdb.browse.cs(600,18): error CS0542:
> `mercury.mdb__browse.Deref_result_1.Deref_result_1': member names
> cannot be the same as their enclosing type
> Mercury/css/mdb.browse.cs(577,16): (Location of the symbol related
> to previous error)
> Indeed, at line 577, mdb.browse.cs has:
>   public class Deref_result_1
> and at line 600 has the inner class:
>     public class Deref_result_1
>       : mdb__browse.Deref_result_1
> Is there a way to fix this, or to run make install without making
> the browser?

I will look into the bug next week.

It builds if you only keep the *.m files from the compiler, library and
mdbcomp directories.  The command you need is actually:

    mmc -s csharp -m top_level -j4 --no-mercury-stdlib-dir \
        --allow-stubs --link-object mercury_dotnet.cs \
	--csharp-compiler gmcs

The --no-mercury-stdlib-dir makes the compiler fall back to the default
C# compiler name of `csc' instead of `gmcs'.

mercury-users mailing list
Post messages to:       mercury-users at csse.unimelb.edu.au
Administrative Queries: owner-mercury-users at csse.unimelb.edu.au
Subscriptions:          mercury-users-request at csse.unimelb.edu.au

More information about the users mailing list