[comp.sys.amiga] C Compiler bug?

marco@hpuamsa.UUCP (Marco Lesmeister) (10/20/88)

I am a new Amiga user and I come from the IBM-PC (Sorry) world. I
have got an aztec C compiler for the Amy, but when I try to link the

main() { 
  printf("hello world\n"); 
}

program the linker just hangs the system. Any suggestions why?
Is there a better C compiler out there?
I hope I get an answer, because I really can't wait to get started
in this wonderfull world of the Amiga.

Marco Lesmeister.

charles@hpcvca.HP.COM (Charles Brown) (10/22/88)

> I am a new Amiga user and I come from the IBM-PC (Sorry) world. I
> have got an aztec C compiler for the Amy, but when I try to link the
>	Marco Lesmeister.

You need to include more information.  Start with
	What revision of AmigaDos.
	Aztec C revision
	How much RAM.
	What kind of Amiga (e.g. A1000)
	Sequence of commands which caused the lockup.  Show all options.
--
	Charles Brown		charles%hpcvca@hplabs.hp.com
	Not representing my employer.

bader+@andrew.cmu.edu (Miles Bader) (10/23/88)

FSJTM@ALASKA.BITNET (...Ar Henchou Kuzh...) writes:
> char *array[] = { "s1" "s2" };
> Now, it seems obvious to me (and every other compiler I
> have used) that this is a syntax error.  But the Manx compiler never even
> burps.  What it does do is concat "s1" and "s2" into "s1s2" and put just the

In ANSI c, putting two string literals next to one another like that
is supposed to be equivalent to a string literal that is the
concatenation of the two.  So manx is correct by that standard...

-Miles

marco@hpuamsa.UUCP (Marco Lesmeister) (10/25/88)

>main() { 
>  printf("hello world\n"); 
>}
>
>program the linker just hangs the system. Any suggestions why?
>Is there a better C compiler out there?
>
>Marco Lesmeister.


I have got a 3.4 version of Aztec C, but I think I already found out
what is wrong, it's my c.lib library. The linker does its work fine
until he gets to a function _output, and then it just hangs, so I took
the cl.lib in stead of c.lib and everything was OK, "hello world"
appeared on my screen. 
What is the best library to use in stead of c.lib which is obviously
rotten in my case?

Thanks for the reply,

Marco Lesmeister.

harald@leo.UUCP ( Harald Milne) (10/25/88)

In article <oXMI82y00Uka4CCa8g@andrew.cmu.edu>, bader+@andrew.cmu.edu (Miles Bader) writes:
> FSJTM@ALASKA.BITNET (...Ar Henchou Kuzh...) writes:
> > char *array[] = { "s1" "s2" };
> > Now, it seems obvious to me (and every other compiler I
> > have used) that this is a syntax error.  But the Manx compiler never even
> > burps.  What it does do is concat "s1" and "s2" into "s1s2" and put just the
> 
> In ANSI c, putting two string literals next to one another like that
> is supposed to be equivalent to a string literal that is the
> concatenation of the two.  So manx is correct by that standard...

	Don't take this personally, but after seeing a slew of these type of
responses, I'm starting to reach the boiling point.

*** Start of tirade ***

	If Manx choses to implement ANSI C features, then for heavens sake
do all or nothing. What damm good is a half ass compiler that's neither
here nor there. Either it's ANSI, or it's not. 

	Saying this is legal in ANSI is a crock of you know what.

	Volatile is ANSI, see what MANX does with that! ARGH!

	(I know the manual says you can't do that, on some sentence on some
	frickin obscure page. ARGH!)

	Sorry, I just can't stand sh*t compilers. MANX can't even assemble it's
own compiler output. ARGH! 

	Does ANY other microcomputer user use MANX. Is the Amiga the only
micro cursed with only two buggy compiler offerings? (Like C++ fresh from
Lattice)

	I THINK IT'S TIME FOR A THIRD CHOICE!!! (Sounds like politics)

	Sorry, just had to get that off my chest. It's bad enough when I screw
up, but compilers you spend a hefty portion on (like the MANX commercial
package) and get THREATENED if you don't send your disks back for FUTURE
UPDATES THAT NEVER EXIST! ARGH! How long has MANX sat on 3.6a bugs? Support?

	Crap, give me the source, I'll fix it myself thank you. 

	Nothing like scanning the manual 14 times, just to find a single sentence
that changes EVERYTHING! ARGH!

	Ok, I feel better now. But their phone is still busy, it's still 3.6a,
and I gotta live with it till when? ARGH!

	For the money charged, you would thing MANX could at least afford ONE
lousy set of upgrade disks, but nooooooooooo.

	Am I the only person that feels this way?

	Can't MANX support the only users of their junk before they fold from
neglect?

	What good is a "commercial grade compiler" if it never gets fixed between
releases?

	I can do what I do to fix unsupported UNIX compilers, write a filter
that fixes the problems before the assembler pass. ARGH!

	I hate this!!!

	This moment of outrage is for me and everybody I try to help. Sorry.

*** End of tirade, wimpering and sobbing softly now, argh ,wimper, snifle ***

	Does CBM use Greenhills? Hmmm.

>
> -Miles
-- 
Work: Computer Consoles Inc. (CCI), Advanced Development Group (ADG)
      Irvine, CA (RISCy business!) 
UUCP: uunet!ccicpg!leo!harald

ewhac@well.UUCP (Leo L. Schwab) (10/27/88)

In article <3418@leo.UUCP> harald@leo.UUCP ( Harald Milne) writes:
> [I HATE MANX I HATE MANX I HATE MANX....]
>
	Well, I still like Manx.  As Perry Kivolowitz said in a Transactor
article, the reason I use Manx is not because of the relative merits of the
compilers.  I use Manx based on the relative merits of the compilers 2.5
years ago.  In other words, inertia.

	Two and a half years ago, Lattice was utter dreck.  It had two
seperately invoked passes (which I still disagree with), was big, was slow,
had bugs ('register' didn't work at all), was slow, and was cumbersome to use
("df1:lc1 -idf1:include/ -idf1:include/lattice/ foo.c" (and before you say
it, 'lc' never worked right, and I refused to use batch files on a
floppy-only machine with 512K)).

	Manx, on the other hand, was remarkably similar to UNIX, which was
my first exposure to C.  The compiler was called 'cc', the assembler was
called 'as', the command line syntax for both programs was similar to UNIX,
it came with 'make' which also mimicked the UNIX make facility, and also
came with a bunch of other goodies which derive from UNIX, like 'z'.  So I
started using Manx, and still do.

	The reason I continue to use Manx is largely one of inertia.  I have
no compelling reason to move to the new Lattice.  Manx is still perfectly
quick, generates reasonable code, generates *assembly* source which I can
edit, and I still use 'z' every day to write my programs.

	The interesting part of all this is that John Toebes has, out of the
kindness of his heart, helped us at Silent Software to meet a deadline with
Disney and Amiga Roger Rabbit.  Nearly everyone inside SS has switched to
Lattice, and Reichart is encouraging me to do so as well.  I insist that I
don't need to; he says that my life will be more wonderful if I do.

	Speaking as someone who still uses 1.2, still uses DBW VT100 2.1,
and only knows 'vi', I must admit that I could probably do with a great deal
of updating.  But I'm disinclined to do so, since my productivity would go
to zero while I re-learned everything.  How to solve this problem....

	Back to the central point:  Please don't flame Manx.  Yes, there are
bugs.  Yes, they have been there a long time; this is why Jim Goodnow II is
busily working on Manx 4.0, which will be ANSI compliant.  No doubt Manx 4.0
will beat Lattice 4.0, which will make Lattice improve its compiler again,
which will make Manx improve its compiler....  We all win in this war.

	In any case, Manx has served me exceedingly well.  I like it.

_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
Leo L. Schwab -- The Guy in The Cape	INET: well!ewhac@ucbvax.Berkeley.EDU
 \_ -_		Recumbent Bikes:	UUCP: pacbell > !{well,unicom}!ewhac
O----^o	      The Only Way To Fly.	      hplabs / (pronounced "AE-wack")
"Work FOR?  I don't work FOR anybody!  I'm just having fun."  -- The Doctor

mikhe@butterix.liu.se (Mike Henry) (10/29/88)

In article <7880004@hpuamsa.UUCP> marco@hpuamsa.UUCP (Marco Lesmeister) writes:
>I have got a 3.4 version of Aztec C, but I think I already found out
>what is wrong, it's my c.lib library. The linker does its work fine
>until he gets to a function _output, and then it just hangs, so I took
>the cl.lib in stead of c.lib and everything was OK, "hello world"...

   Yaah, and I can't pull GetDiskObject or FreeDiskObject from mine,
   what ever I use. :^(

   But, you know, Compiler Constructors are only human... B^)

>Marco Lesmeister.

		-Mike
-- 
InterNet : mikhe@majestix.liu.se                                      ///
UUCP :  {seismo,mcvax,munnari}!enea!liuida!majestix!mikhe            ///
ARPA : mikhe%majestix.{ida.liu.se,UUCP}@seismo.CSS.GOV           \\\/// What
SNAIL: Mike Henry, Alsattersg. 3C:20, S-582 51 Linkoping SWEDEN   \XX/ Else??