Re: Bug#196800: flex mustn't assume stdint.h is available on allplatforms
On Jun 13, Daniel Jacobowitz (dan@debian.org) wrote:
> On Fri, Jun 13, 2003 at 06:02:02PM -0500, Manoj Srivastava wrote:
> > On Fri, 13 Jun 2003 18:20:37 -0400, Daniel Jacobowitz <dan@debian.org> said:
> >
> > > On Thu, Jun 12, 2003 at 08:40:47PM -0500, Manoj Srivastava wrote:
> > >> On Thu, 12 Jun 2003 15:22:17 -0400, Daniel Jacobowitz
> > >> <dan@debian.org> said:
> > >>
> > >> >> You need to read up on your standards. The language called C is
> > >> >> defined by only one authoritative standard.
> > >> >> ----------------------------------------------------------------------
> > >> >> ISO/IEC 9899:1999 (E) (C)ISO/IEC
> > >> >>
> > >> >> Contents ix
> > >> >>
> > >> >> 5 This second edition cancels and replaces the first edition,
> > >> >> ISO/IEC 9899:1990, as amended and corrected by ISO/IEC
> > >> >> 9899/COR1:1994, ISO/IEC 9899/AMD1:1995, and ISO /IEC
> > >> >> 9899/COR2:1996.
> > >> >>
> > >> >> ----------------------------------------------------------------------
> > >> >>
> > >> >> Thus, I need have no such qualifiers when talking abouit
> > >> >> conforming C implmentations.
> > >>
> > >> > Given the real-world deployment of probably at least a dozen
> > >> > major OSs which were 9899:1990 conformant and predate the
> > >> > 9899:1999 standard, I'd say that's a pretty useless point of
> > >> > view.
> > >>
> > >> OOh, I am blinded by the cogency of your arguments.
> > >>
> > >> C99 is over 3 years old.
> >
> > > And still not fully implemented. Unstable only switched to a
> > > compiler with minimal C99 support some months ago. GCC has no
> > > roadmap for implementing the remaining C99 features so it may be
> > > years before they are available on free operating systems.
> >
> > And? You seem to be implying (incorrectly), that flex requires
> > more of C99 than is already present in Debian and a post 2.95
> > gcc. The new flex has been compiled, and has all the test suites
> > succesfully compile, on all 11 architectures Debian supports.
> >
> > >> For ancient platforms, use flex-old.
> > >>
> > >> Anyway, you are certainly entitled to your opinion, and you can do
> > >> whatever you want with your packages and your code.
> >
> > > I am somewhat distressed that the version of flex provided with
> > > Debian (I am assuming from the discussion) will not be usable for
> > > cross-platform development without constant care to use flex-old
> > > instead. We've finally persuaded binutils and GCC to move into the
> > > era of C90 source. I don't think we'll see C99 widely enough
> > > supported to write portable software using it until 2008 at least.
> >
> > Again you raise a strawman. Flex comes with a plethora of
> > tests, and all the tests have always been passed. Flex works with all
> > 11 architectures that comprise debian (we have a mysterious test
> > failure on the most recent m68k run, though I think it may have more
> > to do with the new gcc there than anything else).
> >
> > Now, if you have any concrete objections as to why flex does
> > not work in Debian, please feeel free to point them out. If you
> > merely want to grumble about how flex may not work until 2008,
> > without providing a basis for such grumplings, I am sure I can't help
> > you there.
>
> You have missed my point. I am quite aware that flex-generated lexers
> will continue to work on all Debian platforms. But until C99 is much
> more mature than it is today, many other significant platforms will not
> have a C99-compatible compiler - even to the degree of including
> <stdint.h>. Therefore Debian becomes more awkward for cross-platform,
> portable development. Not useless, because of flex-old, but certainly
> more awkward; I will not be able to build Debian packages which require
> a recent flex in the same root in which I build cross-platform
> software.
>
> Certainly you have not broken Debian; but I maintain that this
> short-sightedness does damage Debian's usefulness as a development
> platform, for all those targets which many more practical developers
> must support in order to do their jobs.
I think this is an excellent point. I can think of many times when I've done
development work in Debian and ported the result to Solaris, IRIX or HPUX. It
is, of course, not a requirement for Debian that this be easy, but the easier
it is, the more convincing the argument for integrating Debian into a mixed
*nix environment, for everyone from developers to CIOs.
--
Neil Roeth
Reply to: