Re: Bug#196800: flex mustn't assume stdint.h is available on allplatforms
On Mon, 16 Jun 2003 22:55:53 -0400, Neil Roeth [EMAIL PROTECTED] said: On Jun 13, Daniel Jacobowitz ([EMAIL PROTECTED]) 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 [EMAIL PROTECTED] 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 [EMAIL PROTECTED] 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. Fine. You can then still choose to use flex-old (of course, any C++ scanners you have shall fail to work with gcc 3.3, and even for C scanners all bets are off wrt new compilers). Or you can use the new flex, and get scanners that require conforming implementations. Debian offers you the cjoice -- since there is none which is unequivocally better. manoj -- We all agree on the necessity of compromise. We just can't agree on when it's necessary to compromise. --Larry Wall in [EMAIL PROTECTED] Manoj Srivastava [EMAIL PROTECTED] http://www.debian.org/%7Esrivasta/ 1024R/C7261095 print CB D9 F4 12 68 07 E4 05 CC 2D 27 12 1D F5 E8 6E
Re: Bug#196800: flex mustn't assume stdint.h is available on allplatforms
On Jun 18, Manoj Srivastava ([EMAIL PROTECTED]) wrote: On Mon, 16 Jun 2003 22:55:53 -0400, Neil Roeth [EMAIL PROTECTED] said: On Jun 13, Daniel Jacobowitz ([EMAIL PROTECTED]) wrote: 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. Fine. You can then still choose to use flex-old (of course, any C++ scanners you have shall fail to work with gcc 3.3, and even for C scanners all bets are off wrt new compilers). Or you can use the new flex, and get scanners that require conforming implementations. Debian offers you the cjoice -- since there is none which is unequivocally better. I was addressing the more general short-sightedness point, not the specific flex issue. I suppose I could have stated that explicitly. [package] works with all 11 architectures that comprise debian is short sighted if there is significant value to cross platform development, where cross platform means Debian to non-Debian, not Debian arch to other Debian arch. -- Neil Roeth
Re: Bug#196800: flex mustn't assume stdint.h is available on allplatforms
Alan Shutko [EMAIL PROTECTED] wrote: Huh? POSIX is the same as SUSv3 now? They used to be separate. http://lwn.net/Articles/15697/ -- Debian GNU/Linux 3.0 is out! ( http://www.debian.org/ ) Email: Herbert Xu ~{PmVHI~} [EMAIL PROTECTED] Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
Re: Bug#196800: flex mustn't assume stdint.h is available on allplatforms
On Mon, 16 Jun 2003 13:22:24 +1000, Herbert Xu [EMAIL PROTECTED] said: Manoj Srivastava [EMAIL PROTECTED] wrote: I can understand the unease. But consider this: POSIX is already over a decade old; and it standardized practices that were SuSv3 aka POSIX was released one year ago. And changed nothing in the Lex definitions. As I said, we are dealing with decades old design. manoj -- Time flies like an arrow. Fruit flies like a banana. Manoj Srivastava [EMAIL PROTECTED] http://www.debian.org/%7Esrivasta/ 1024R/C7261095 print CB D9 F4 12 68 07 E4 05 CC 2D 27 12 1D F5 E8 6E 1024D/BF24424C print 4966 F272 D093 B493 410B 924B 21BA DABB BF24 424C
Re: Bug#196800: flex mustn't assume stdint.h is available on allplatforms
Manoj Srivastava [EMAIL PROTECTED] wrote: SuSv3 aka POSIX was released one year ago. And changed nothing in the Lex definitions. As I said, we are dealing with decades old design. Hmm you must've missed section 1.1 :) The entire document is aligned with ISO/IEC 9899: 1. There is no requirement that lex generates code that is accepted by c89. But of course this has no bearing on whether a particular implementation chooses to be backwards compatible or not. -- Debian GNU/Linux 3.0 is out! ( http://www.debian.org/ ) Email: Herbert Xu ~{PmVHI~} [EMAIL PROTECTED] Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
Re: Bug#196800: flex mustn't assume stdint.h is available on allplatforms
Herbert Xu [EMAIL PROTECTED] writes: SuSv3 aka POSIX was released one year ago. Huh? POSIX is the same as SUSv3 now? They used to be separate. -- Alan Shutko [EMAIL PROTECTED] - I am the rocks. Looking for a developer in St. Louis? http://web.springies.com/~ats/ Ten animals I slam in a net
Re: Bug#196800: flex mustn't assume stdint.h is available on allplatforms
On Jun 13, Daniel Jacobowitz ([EMAIL PROTECTED]) 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 [EMAIL PROTECTED] 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 [EMAIL PROTECTED] 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
Re: Bug#196800: flex mustn't assume stdint.h is available on allplatforms
Manoj Srivastava [EMAIL PROTECTED] wrote: I can understand the unease. But consider this: POSIX is already over a decade old; and it standardized practices that were SuSv3 aka POSIX was released one year ago. -- Debian GNU/Linux 3.0 is out! ( http://www.debian.org/ ) Email: Herbert Xu ~{PmVHI~} [EMAIL PROTECTED] Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt