[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [DotGNU]Mercury on Portable.NET (not successful)
From: |
Fergus Henderson |
Subject: |
Re: [DotGNU]Mercury on Portable.NET (not successful) |
Date: |
Thu, 27 Feb 2003 23:18:42 +1100 |
User-agent: |
Mutt/1.3.28i |
On 27-Feb-2003, Rhys Weatherley <address@hidden> wrote:
> > Actually I didn't really expect this to run, since I was trying it on
> > Linux, and some of those DLLs eventually reference Microsoft.VisualC
> > which is not going to be present.
>
> We do actually have a Microsoft.VisualC now. There isn't very much in it.
OK, that sounds good. It would be great if this code could run on
Linux too. We don't really use Microsoft.VisualC much. I think it is
used just for the DebugInfoInPDB attribute, which gets inserted because
we compile with /debug.
Actually there is one place in the Mercury standard library
and runtime system where we do need to use native code: for the
"set_environment_variable" procedure, we need to invoke the C/Posix
putenv() API, since there's no way to do it using the .NET Framework
API. But I've looked at the code which MSVC++ generates for that, and
it looks like ordinary pinvoke code which in theory ought to work on
Linux too. It does reference a couple of attributes in Microsoft.VisualC
("NoSignSpecifier" and "IsConstModifier" on the `int8 *' / `const char *'
argument), but they are probably trivial to define if you haven't already
done so.
--
Fergus Henderson <address@hidden> | "I have always known that the pursuit
The University of Melbourne | of excellence is a lethal habit"
WWW: <http://www.cs.mu.oz.au/~fjh> | -- the last words of T. S. Garp.