#C Compilers: which one?
9 messages in this thread
I look at things like 'chip' and think that many of the additions to Lattice
5.0 were simply little (but non-portable) features to make the weenies squeal,
to decrease portability between Lattice and Manx, and to ultimately sell more
Lattice C. Not that I'm opposed to that kind of marketing. 🙂 I'm not
interested in reducing my executables to 453 bytes. I'm sure you can do that
with an endless stream of tricks with Lattice – pragmas, register-use tips,
in-line string functions and all the rest. I am very interested in portable
code, not just between Manx and Lattice, but to and from other machines. Is
Lattice 5.0x finally free of bugs? One of the reasons I've stuck with Manx
3.6a is that it's a known quantity. How many bugs are still in Lattice 5.02?
– John Foust
Oh, so do I get some kind of prize when I discover a new bug? 🙂
Yup, you get a wierd software bug tracking number. Lattice (supposedly)
notifies you when they fix the bug if you're the first to report it.
Dave @OTG
Are you speaking to me specifically or just adding your comments to the pool?
I like Manx and use it daily.
To the rest of you following this thread…
My main point is that almost any addition to C (in my opinion) is a plus. It
is the programmer's choice to use it or not. If that programmer is trying to
create portable code then that programmer will CHOOSE to not use the
non-portable things (like CHIP, ILAC, …) For other progammers portablility
is not something they care as much about. I just want to get the job done. If
one compiler has a CHIP keyword that helps or another has ILAC and that helps
or one has a billion extra powerful libraries with functions like
CreateMyApplication(* ApplicationStructure) then I will use the compiler that
will get the job done with the least amount of hassle. (hassle being my
definition since I am programming this project and not BEN's 🙂
GreggT
\|//
_OO // Echidna
So can we consider all non-portable constructs to be equally bad? If that's
true, then 'chip' should be regarded to be as evil as in-line asm code. I
don't think I've seen a piece of Lattice code for 5.x that doesn't use non-Manx
constructs – apart from ANSI function prototypes. I think Lattice programmers
have little concern for portability – as a whole, from what I've seen posted so
far. Before 5.0, programmers seemed to be concerned with portability, but now,
they'd rather fight than switch.
Use the RM Function to read
these messages.
Use the RM Function to read
these messages.