mirror of
https://git.hardenedbsd.org/hardenedbsd/HardenedBSD.git
synced 2024-12-30 15:38:06 +01:00
a4cd5630b0
non-i386, non-unix, and generatable files have been trimmed, but can easily be added in later if needed. gcc-2.7.2.1 will follow shortly, it's a very small delta to this and it's handy to have both available for reference for such little cost. The freebsd-specific changes will then be committed, and once the dust has settled, the bmakefiles will be committed to use this code.
40 lines
1.3 KiB
Plaintext
40 lines
1.3 KiB
Plaintext
This is a collection of things that test suites have
|
|
said were "wrong" with GCC--but that I don't agree with.
|
|
|
|
First, test suites sometimes test for compatibility with
|
|
traditional C. GCC with -traditional is not completely
|
|
compatible with traditional C, and in some ways I think it
|
|
should not be.
|
|
|
|
* K&R C allowed \x to appear in a string literal (or character
|
|
literal?) even in cases where it is *not* followed by a sequence of
|
|
hex digits. I'm not convinced this is desirable.
|
|
|
|
* K&R compilers allow comments to cross over an inclusion boundary (i.e.
|
|
started in an include file and ended in the including file).
|
|
I think this would be quite ugly and can't imagine it could
|
|
be needed.
|
|
|
|
Sometimes tests disagree with GCC's interpretation of the ANSI standard.
|
|
|
|
* One test claims that this function should return 1.
|
|
|
|
enum {A, B} foo;
|
|
|
|
func (enum {B, A} arg)
|
|
{
|
|
return B;
|
|
}
|
|
|
|
I think it should return 0, because the definition of B that
|
|
applies is the one in func.
|
|
|
|
* Some tests report failure when the compiler does not produce
|
|
an error message for a certain program.
|
|
|
|
ANSI C requires a "diagnostic" message for certain kinds of invalid
|
|
programs, but a warning counts as a diagnostic. If GCC produces
|
|
a warning but not an error, that is correct ANSI support.
|
|
When test suites call this "failure", the tests are broken.
|
|
|