On Feb 2, 2017, at 9:25 AM, Bill Gunshannon
<bill.gunshannon at hotmail.com> wrote:
From: cctalk [cctalk-bounces at
classiccmp.org] on behalf of Paul Koning [paulkoning at
comcast.net]
Sent: Thursday, February 2, 2017 9:34 AM
To: General Discussion: On-Topic and Off-Topic Posts
Cc: jnc at
mercury.lcs.mit.edu
Subject: Re: RL02 version of UNIX6?
On Feb 1, 2017, at 9:30 PM, Noel Chiappa <jnc
at mercury.lcs.mit.edu> wrote:
From: Paul Koning
Yes, GCC should do that correctly. ... Dealing
with the output might be
a nuisance ... You may need some post-processing to cast the output
into the syntax that V6 "as" expects.
Actually, dealing with the _input_ is going to be a PITA (so my suggestion
was, in retrospect, not really a plausible one). The problem is that V6 is
written in an early dialect of C, one which I am sure would cause GCC would
toss its cookies, if fed to it.
Some things, like "a =+ b;" would be easy to fix; likewise "int a 1;"
instead
of "int a = 1;". But the Unix kernel is shot through with places where are
int is used as a structure pointer, etc, without benefit of a cast (casts
weren't invented until later). And a lot of stuff like that.
Yes, that would be an interesting issue. One answer would be to write a new front end
("Old C"). That's probably more work than can easily be justified, though.
__________________________________________________________________
What version of GCC is being used here? I thought they removed support
for the PDP-11 more than a deacde ago.
And, while I am at it, based on what people are saying here I assume they also
removed the switch for K&R mode.
It?s not just K&R mode. It?s v6 mode. C had some deficiencies prior to the release
of v7. The most notable was that <larg> <op=> <expression> (e.g. a +=
1) was in
v6 actually <larg><=op><expression> (e.g a =+ 1). This led to
ambiguities:
if you have a=+1 do you mean to increment a by 1 or assign +1 to a? I don?t recall
if v7 cc was transitory (in that it allowed both forms) but I do know the earlier form
was phased out fairly quickly.
TTFN - Guy