Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!uunet!seismo!rutgers!mit-eddie!uw-beaver!tektronix!cae780!daniels
From: daniels@cae780.TEK.COM (Scott Daniels)
Newsgroups: comp.lang.misc,comp.lang.c,comp.lang.fortran,comp.lang.pascal
Subject: Re: Names of non-local objects
Message-ID: <4314@cae780.TEK.COM>
Date: Mon, 27-Jul-87 14:06:56 EDT
Article-I.D.: cae780.4314
Posted: Mon Jul 27 14:06:56 1987
Date-Received: Wed, 29-Jul-87 03:12:14 EDT
References: <557@l.cc.purdue.edu> <6173@brl-smoke.ARPA>
Reply-To: daniels@cae780.UUCP (Scott Daniels)
Distribution: world
Organization: Tektronix, Inc., Beaverton, OR.
Lines: 25
Xref: mnetor comp.lang.misc:583 comp.lang.c:3323 comp.lang.fortran:176 comp.lang.pascal:220

In article <6173@brl-smoke.ARPA> gwyn@brl.arpa (Doug Gwyn (VLD/VMB) ) writes:
>In article <557@l.cc.purdue.edu> cik@l.cc.purdue.edu (Herman Rubin) writes:
>>This would enable the user who, for some reason,
>>wishes to combine programs from different compilers not to have to worry 
>>about what mangling of names is done by this compiler on this system.
>
>There is a lot more to worry about than simply matching of external
>names by the linker.  Inter-language linkage can be quite tricky,...

Perhaps what we need is something more of the following form:
	#pragma interface_name c_name = external_name
Which would maker all uses of "c_name" in the C source show as "external_name"
in the linker.  This allows you to avoid the nasty assembly language step if
all you want is to avoid name convention problems (ie if a C call can be made 
"close enough", or a C procedure can cope with the others call format.)

This certainly fits smoothly in the language, since there is no need to use
this feature within a full C-world, and the "wart" stands out in a single 
place.

FROM:   Scott Daniels, Tektronix CAE
	5302 Betsy Ross Drive, Santa Clara, CA  95054
UUCP:   tektronix!teklds!cae780!daniels
	{ihnp4, decvax!decwrl}!amdcad!cae780!daniels 
        {nsc, hplabs, resonex, qubix, leadsv}!cae780!daniels