Up to [cvs.NetBSD.org] / src / tests / usr.bin / xlint / lint1
Request diff between arbitrary revisions
Default branch: MAIN
Revision 1.78 / (download) - annotate - [select for diffs], Mon Feb 6 21:20:58 2023 UTC (2 days ago) by rillig
Branch: MAIN
CVS Tags: HEAD
Changes since 1.77: +2 -2
lines
Diff to previous 1.77 (colored)
tests/lint: sync reference to platform properties generator
Revision 1.77 / (download) - annotate - [select for diffs], Mon Feb 6 21:01:55 2023 UTC (2 days ago) by rillig
Branch: MAIN
Changes since 1.76: +2 -3
lines
Diff to previous 1.76 (colored)
lint: eliminate unnecessary indirection No functional change.
Revision 1.76 / (download) - annotate - [select for diffs], Fri Jun 17 20:24:00 2022 UTC (7 months, 3 weeks ago) by rillig
Branch: MAIN
CVS Tags: netbsd-10-base,
netbsd-10
Changes since 1.75: +7 -11
lines
Diff to previous 1.75 (colored)
tests/lint: remove .exp files, as they have become redundant Now that each lint1 test lists all generated diagnostics as 'expect' comments, the information from the .exp files is no longer needed. The only information that gets lost is the order of the diagnostics, which is mostly relevant for paired messages like 'inconsistent definition' + 'previous definition was here'.
Revision 1.75 / (download) - annotate - [select for diffs], Sat Feb 26 20:36:11 2022 UTC (11 months, 1 week ago) by rillig
Branch: MAIN
Changes since 1.74: +1 -24
lines
Diff to previous 1.74 (colored)
lint: fix memory corruption in statement expressions (since 2021-12-17) The commit that introduced the assertion failure looks innocent, it only adds a few predefined functions for GCC mode. Nevertheless, before that commit, lint consistently complained about 'error: void type illegal in expression [109]', which doesn't make sense either. This fix also removes the creative use of the initialization stack to store the type of the statement expression. Having a separate stack for these statement expressions makes the code easier to understand.
Revision 1.74 / (download) - annotate - [select for diffs], Sat Feb 26 16:43:20 2022 UTC (11 months, 1 week ago) by rillig
Branch: MAIN
Changes since 1.73: +24 -1
lines
Diff to previous 1.73 (colored)
tests/lint: demonstrate assertion failure in GCC compound expression
Revision 1.73 / (download) - annotate - [select for diffs], Sun Oct 10 18:16:12 2021 UTC (15 months, 4 weeks ago) by rillig
Branch: MAIN
Changes since 1.72: +1 -2
lines
Diff to previous 1.72 (colored)
tests/lint: remove duplicate platform, generate platforms list It was an unreliable idea to extract the platform properties from the targparam.h files manually, even if it was a one-time job. I still made a mistake by accidentally marking aarch64 as schar, even though it is uchar, plus I duplicated the line for powerpc64. Remove the duplicate line, no functional change.
Revision 1.72 / (download) - annotate - [select for diffs], Sun Oct 10 08:45:51 2021 UTC (15 months, 4 weeks ago) by skrll
Branch: MAIN
Changes since 1.71: +2 -2
lines
Diff to previous 1.71 (colored)
aarch64 has unsigned char
Revision 1.71 / (download) - annotate - [select for diffs], Sun Sep 26 03:17:59 2021 UTC (16 months, 2 weeks ago) by rillig
Branch: MAIN
Changes since 1.70: +7 -5
lines
Diff to previous 1.70 (colored)
tests/lint: add tests for platform characteristics Running lint in usr.bin/make on i386 fails due to this warning: cond.c(800): warning: argument #3 is converted from 'unsigned char' to 'unsigned int' due to prototype [259] This warning only occurred on i386 but not on sparc or x86_64. Try to reproduce the test situation in platform_int. The platform code in t_integration.sh was not strict enough, it didn't check for multiple conditions, such as in msg_132_ilp32. That test was only supposed to run on ILP32 platforms where size_t is unsigned int. It also ran on sparc, even though size_t is long there.
Revision 1.70 / (download) - annotate - [select for diffs], Fri Sep 10 20:02:51 2021 UTC (16 months, 4 weeks ago) by rillig
Branch: MAIN
Changes since 1.69: +3 -3
lines
Diff to previous 1.69 (colored)
lint: replace space followed by tab with simply tab No functional change.
Revision 1.69 / (download) - annotate - [select for diffs], Sat Aug 21 11:50:57 2021 UTC (17 months, 2 weeks ago) by rillig
Branch: MAIN
Changes since 1.68: +10 -5
lines
Diff to previous 1.68 (colored)
tests/lint: guard against typos in test environment configuration Some tests had "lint1-only-if" without a trailing colon, others included the trailing colon. The tests that included the trailing colon were run even though they were supposed to be skipped, and they failed, as could be expected. To prevent further typos, always require the trailing colon, just as in "lint1-flags" and fail fast on unknown "lint1" comments.
Revision 1.68 / (download) - annotate - [select for diffs], Tue Jul 13 18:50:16 2021 UTC (18 months, 3 weeks ago) by rillig
Branch: MAIN
Changes since 1.67: +7 -8
lines
Diff to previous 1.67 (colored)
tests/lint: take archsubdir from usr.bin/xlint/Makefile.inc This fixes the tests on the various ARM platforms where the platform name does not correspond to MACHINE_ARCH, such as earmv7hf.
Revision 1.67 / (download) - annotate - [select for diffs], Sun Jul 11 22:41:36 2021 UTC (18 months, 4 weeks ago) by rillig
Branch: MAIN
Changes since 1.66: +14 -25
lines
Diff to previous 1.66 (colored)
tests/lint: rework ATF test driver To skip tests that work only on particular platforms, a simple 'eval' from the shell does not work since it does not exit on failure. Fix this by storing the commands in a local variable first. Remove configuration knobs 'lint1-only-if-arch' and 'lint1-skip-if-arch' since they are unused. When skipping a test, actually mark it as skipped in the ATF statistics.
Revision 1.66 / (download) - annotate - [select for diffs], Tue Jun 29 13:58:13 2021 UTC (19 months, 1 week ago) by rillig
Branch: MAIN
Changes since 1.65: +40 -9
lines
Diff to previous 1.65 (colored)
tests/lint: add test that only runs where char == unsigned char There a 4 regular NetBSD builds where lint is activated. All these builds run on platforms where char == signed char. The official test runs from https://releng.netbsd.org/test-results.html mostly have char == signed char as well. However, lint behaves differently on platforms with char == unsigned char. On these platforms, a simple "char ch = '\xff'" leads to the bogus warning that "conversion of 'int' to 'char' is out of range".
Revision 1.65 / (download) - annotate - [select for diffs], Tue Jun 29 09:19:17 2021 UTC (19 months, 1 week ago) by rillig
Branch: MAIN
Changes since 1.64: +2 -2
lines
Diff to previous 1.64 (colored)
tests/lint: add tests for ILP32 platforms Previously, all tests for lint had to produce the exact same output, no matter which platform they ran on. This differs from practical needs since lint is intended to produce different results depending on whether the platform is ILP32 or LP64. Examples for these are type conversions and the widths of the integer types during lexical analysis.
Revision 1.64 / (download) - annotate - [select for diffs], Tue Jun 29 08:46:10 2021 UTC (19 months, 1 week ago) by rillig
Branch: MAIN
Changes since 1.63: +33 -12
lines
Diff to previous 1.63 (colored)
tests/lint: allow tests to be skipped depending on platform properties
Revision 1.63 / (download) - annotate - [select for diffs], Sun Jun 27 19:41:15 2021 UTC (19 months, 1 week ago) by rillig
Branch: MAIN
Changes since 1.62: +2 -2
lines
Diff to previous 1.62 (colored)
tests/lint: fix selection of the .exp-ln file Since t_integration.sh 1.58 from today, the expected .ln output was not detected anymore. Changes to the file format would have gone unnoticed.
Revision 1.62 / (download) - annotate - [select for diffs], Sun Jun 27 19:33:25 2021 UTC (19 months, 1 week ago) by rillig
Branch: MAIN
Changes since 1.61: +14 -126
lines
Diff to previous 1.61 (colored)
tests/lint: remove list of test names from t_integration By convention, each *.c file in the source directory is a test case. There is no need to list them individually and redundantly. There is also no need to group the tests for the individual messages. This ensures that each test is run in the regular builds. Previously, the test all_messages stopped after the first failure.
Revision 1.61 / (download) - annotate - [select for diffs], Sun Jun 27 19:10:29 2021 UTC (19 months, 1 week ago) by rillig
Branch: MAIN
Changes since 1.60: +2 -2
lines
Diff to previous 1.60 (colored)
lint: require C11 for _Generic This does not have any effect in practice since the option -g (originally meant for GCC extensions to the C standards) implicitly allows all features from C11, since err.c 1.111 from 2021-04-14. Since the default lint flags for NetBSD builds include the option -g, this allows all C11 features. Currently it is not possible to say "allow GNU extensions but not C11".
Revision 1.60 / (download) - annotate - [select for diffs], Sun Jun 27 18:48:45 2021 UTC (19 months, 1 week ago) by rillig
Branch: MAIN
Changes since 1.59: +2 -1
lines
Diff to previous 1.59 (colored)
lint: fix option -Ac11, add test for _Generic Previously, selecting the option -Ac11 allowed features from C11 but at the same time prohibited 'long long', which was added in C99. This was caused by the option -s, which is interpreted as "allow features from C90, but no later". The test for _Generic, which has been added in C11, demonstrates that the current implementation is broken. Lint currently thinks that the return type of a _Generic selection is the type of the expression, but it really is the type of the selected expression. In the current tests, this is always 'const char *', but C11 does not require that the types of a generic selection are compatible.
Revision 1.59 / (download) - annotate - [select for diffs], Sun Jun 27 10:14:43 2021 UTC (19 months, 1 week ago) by rillig
Branch: MAIN
Changes since 1.58: +26 -8
lines
Diff to previous 1.58 (colored)
tests/lint: allow skipping individual tests Depending on the platform, some tests do not make sense or produce platform-dependent results. Allow these tests to be marked as such. For example, the test lex_integer.c only works on 64-bit platforms. Therefore it is disabled on i386 for now since it prints different warnings there. Even better would be a "lint1-only-on-lpi32" toggle, but that would need detection of 'sizeof(int)' at runtime.
Revision 1.58 / (download) - annotate - [select for diffs], Sun Jun 27 09:22:31 2021 UTC (19 months, 1 week ago) by rillig
Branch: MAIN
Changes since 1.57: +5 -5
lines
Diff to previous 1.57 (colored)
tests/lint: rename expected .ln file to .exp-ln This way, the hack for suffixes is no longer needed.
Revision 1.57 / (download) - annotate - [select for diffs], Sun Jun 20 18:09:48 2021 UTC (19 months, 2 weeks ago) by rillig
Branch: MAIN
Changes since 1.56: +2 -1
lines
Diff to previous 1.56 (colored)
tests/lint: test syntax error in initialization using designator This test prepares the upcoming refactoring of the grammar.
Revision 1.56 / (download) - annotate - [select for diffs], Sat Jun 19 20:25:58 2021 UTC (19 months, 3 weeks ago) by rillig
Branch: MAIN
Changes since 1.55: +2 -1
lines
Diff to previous 1.55 (colored)
lint: fix endless loop on unfinished comment at EOF Found using afl.
Revision 1.55 / (download) - annotate - [select for diffs], Sat Jun 19 19:59:02 2021 UTC (19 months, 3 weeks ago) by rillig
Branch: MAIN
Changes since 1.54: +2 -1
lines
Diff to previous 1.54 (colored)
lint: fix assertion after malformed for loop Found using afl.
Revision 1.54 / (download) - annotate - [select for diffs], Sat Jun 19 19:49:15 2021 UTC (19 months, 3 weeks ago) by rillig
Branch: MAIN
Changes since 1.53: +2 -1
lines
Diff to previous 1.53 (colored)
lint: fix assertion failure in struct with unnamed member Found using afl.
Revision 1.53 / (download) - annotate - [select for diffs], Sat Jun 19 08:30:08 2021 UTC (19 months, 3 weeks ago) by rillig
Branch: MAIN
Changes since 1.52: +7 -1
lines
Diff to previous 1.52 (colored)
tests/lint: add test cases for lexical analysis
Revision 1.52 / (download) - annotate - [select for diffs], Wed Jun 16 10:21:51 2021 UTC (19 months, 3 weeks ago) by rillig
Branch: MAIN
Changes since 1.51: +40 -41
lines
Diff to previous 1.51 (colored)
tests/lint: sort the list of test cases No functional change.
Revision 1.51 / (download) - annotate - [select for diffs], Wed Jun 16 10:19:23 2021 UTC (19 months, 3 weeks ago) by rillig
Branch: MAIN
Changes since 1.50: +25 -36
lines
Diff to previous 1.50 (colored)
tests/lint: clean up ATF test driver No functional change.
Revision 1.48.2.1 / (download) - annotate - [select for diffs], Mon May 31 22:15:24 2021 UTC (20 months, 1 week ago) by cjep
Branch: cjep_staticlib_x
Changes since 1.48: +3 -2
lines
Diff to previous 1.48 (colored) next main 1.49 (colored)
sync with head
Revision 1.50 / (download) - annotate - [select for diffs], Sun May 16 11:11:37 2021 UTC (20 months, 3 weeks ago) by rillig
Branch: MAIN
CVS Tags: cjep_sun2x-base1,
cjep_sun2x-base,
cjep_sun2x,
cjep_staticlib_x-base1
Changes since 1.49: +2 -2
lines
Diff to previous 1.49 (colored)
lint: add more specific warning for bit-field of type plain 'int' Previously, declaring a bit-field of type plain 'int' resulted in this warning: warning: nonportable bit-field type 'int' [34] This warning was too unspecific to be actionable, and until yesterday it didn't even include the type. In order to allow this warning to be understood and properly fixed, describe the actual nonportability more precisely: warning: bit-field of type plain 'int' has implementation-defined signedness [344]
Revision 1.49 / (download) - annotate - [select for diffs], Fri May 14 21:14:55 2021 UTC (20 months, 3 weeks ago) by rillig
Branch: MAIN
Changes since 1.48: +2 -1
lines
Diff to previous 1.48 (colored)
tests/lint: test bitwise mismatch in switch statement
Revision 1.48 / (download) - annotate - [select for diffs], Mon May 3 03:50:43 2021 UTC (21 months, 1 week ago) by rillig
Branch: MAIN
CVS Tags: cjep_staticlib_x-base
Branch point for: cjep_staticlib_x
Changes since 1.47: +1 -4
lines
Diff to previous 1.47 (colored)
tests/lint: remove outdated comment The test d_gcc_extension is already activated in line 121.
Revision 1.47 / (download) - annotate - [select for diffs], Sun May 2 21:22:09 2021 UTC (21 months, 1 week ago) by rillig
Branch: MAIN
Changes since 1.46: +2 -1
lines
Diff to previous 1.46 (colored)
tests/lint: add test for bit-field types in GCC mode
Revision 1.46 / (download) - annotate - [select for diffs], Sun May 2 20:44:46 2021 UTC (21 months, 1 week ago) by rillig
Branch: MAIN
Changes since 1.45: +2 -1
lines
Diff to previous 1.45 (colored)
tests/lint: demonstrate missing support for __packed __aligned
Revision 1.45 / (download) - annotate - [select for diffs], Fri Apr 30 23:49:36 2021 UTC (21 months, 1 week ago) by rillig
Branch: MAIN
Changes since 1.44: +2 -1
lines
Diff to previous 1.44 (colored)
tests/lint: add very basic tests for GCC __attribute__
Revision 1.44 / (download) - annotate - [select for diffs], Thu Apr 22 22:43:26 2021 UTC (21 months, 2 weeks ago) by rillig
Branch: MAIN
Changes since 1.43: +2 -1
lines
Diff to previous 1.43 (colored)
tests/lint: add test for typeof after statement Found by christos@.
Revision 1.43 / (download) - annotate - [select for diffs], Sun Apr 18 20:02:56 2021 UTC (21 months, 3 weeks ago) by rillig
Branch: MAIN
Changes since 1.42: +16 -3
lines
Diff to previous 1.42 (colored)
lint: test emitting of symbol information in the .ln files Even though the new test is quite large, it didn't find any bugs in the code. The only thing I'm unsure about is why static functions are exported as well, since they are supposed to be local to the translation unit.
Revision 1.42 / (download) - annotate - [select for diffs], Sat Apr 17 20:36:17 2021 UTC (21 months, 3 weeks ago) by rillig
Branch: MAIN
Changes since 1.41: +3 -1
lines
Diff to previous 1.41 (colored)
tests/lint: demonstrate assertion failure in initialization
Revision 1.41 / (download) - annotate - [select for diffs], Wed Apr 14 18:27:11 2021 UTC (21 months, 3 weeks ago) by rillig
Branch: MAIN
Changes since 1.40: +2 -2
lines
Diff to previous 1.40 (colored)
lint: add test for newly added message about static array size
Revision 1.40 / (download) - annotate - [select for diffs], Thu Apr 8 22:18:27 2021 UTC (22 months ago) by rillig
Branch: MAIN
Changes since 1.39: +3 -1
lines
Diff to previous 1.39 (colored)
lint: in code from included files, print stack trace Previously, the standard NetBSD build generated several lint warnings in lhash.h from OpenSSL, without providing any hint as to which file actually included that header. In cases like these, lint now interprets the line number information in the preprocessor output from GCC to reconstruct the exact include path to the file in question. The program check-expect.lua had to be rewritten almost completely since it assumed that all diagnostics would come from the main file. In all existing tests, this was true, but these tests did not cover all cases that occurred in practice. Now it records the complete location of the diagnostic instead of just the line number.
Revision 1.39 / (download) - annotate - [select for diffs], Mon Apr 5 02:05:47 2021 UTC (22 months ago) by rillig
Branch: MAIN
Changes since 1.38: +2 -2
lines
Diff to previous 1.38 (colored)
lint: warn about for wrong type cast in argument to ctype.h functions The argument to most of the functions from <ctype.h> "shall either be representable as an 'unsigned char' or shall equal the value of the macro EOF". When confronted with the infamous warning 'array subscript has type char', there are enough programmers who don't know the background of that warning and thus fix it in a wrong way. Neither GCC nor Clang explain its warning to target these programmers. Both GCC and Clang warn about 'array subscript has type char', but they ignore the other requirements of the <ctype.h> functions, even though these are in the C standard library. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94182 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95177 https://stackoverflow.com/a/60696378
Revision 1.38 / (download) - annotate - [select for diffs], Fri Apr 2 17:25:04 2021 UTC (22 months, 1 week ago) by rillig
Branch: MAIN
Changes since 1.37: +3 -1
lines
Diff to previous 1.37 (colored)
tests/lint: prevent typo from tree.c 1.264 from happening again
Revision 1.37 / (download) - annotate - [select for diffs], Sun Mar 28 14:01:50 2021 UTC (22 months, 1 week ago) by rillig
Branch: MAIN
Changes since 1.36: +9 -12
lines
Diff to previous 1.36 (colored)
lint: remove wrong warning about wrong initializer type The following code is valid: int valid = {{{ 3 }}}; C90 3.5.7 and C99 6.7.8 both say that the "initializer for a scalar shall be a single expression, optionally enclosed in braces". They don't put any upper bound on the amount of braces, not even in the "Translation limits" section.
Revision 1.36 / (download) - annotate - [select for diffs], Sat Mar 27 13:59:18 2021 UTC (22 months, 2 weeks ago) by rillig
Branch: MAIN
Changes since 1.35: +23 -37
lines
Diff to previous 1.35 (colored)
tests/lint: move description of tests into the tests themselves In most cases the descriptions didn't add much to the test name anyway.
Revision 1.35 / (download) - annotate - [select for diffs], Sat Mar 27 13:28:03 2021 UTC (22 months, 2 weeks ago) by rillig
Branch: MAIN
Changes since 1.34: +71 -71
lines
Diff to previous 1.34 (colored)
tests/lint: do not force tests to start with 'd_' Using only parts of the test name files in t_integration.sh made it unnecessarily difficult to find a test based on its filename. The tests for the individual messages already have a different prefix. No functional change.
Revision 1.34 / (download) - annotate - [select for diffs], Tue Mar 23 21:19:08 2021 UTC (22 months, 2 weeks ago) by rillig
Branch: MAIN
Changes since 1.33: +2 -1
lines
Diff to previous 1.33 (colored)
tests/lint: test initialization using string literals The errors in line 74 and 75 of the test are wrong. Everything is fine there. The bug lies in init_array_using_string, try to see if you can spot it, neither GCC 9.3.0 nor Clang 8.0.1 could.
Revision 1.33 / (download) - annotate - [select for diffs], Sun Mar 7 19:42:54 2021 UTC (23 months ago) by rillig
Branch: MAIN
Changes since 1.32: +2 -2
lines
Diff to previous 1.32 (colored)
lint: in strict C mode, warn about initialization with '[a ... b]' https://gcc.gnu.org/onlinedocs/gcc/Case-Ranges.html
Revision 1.32 / (download) - annotate - [select for diffs], Sun Feb 28 22:12:16 2021 UTC (23 months, 1 week ago) by rillig
Branch: MAIN
Changes since 1.31: +2 -1
lines
Diff to previous 1.31 (colored)
lint: fix null pointer dereference on parse error Fixes PR bin/22119.
Revision 1.31 / (download) - annotate - [select for diffs], Sun Feb 28 20:17:14 2021 UTC (23 months, 1 week ago) by rillig
Branch: MAIN
Changes since 1.30: +2 -1
lines
Diff to previous 1.30 (colored)
lint: add test to demonstrate that PR bin/20264 has been fixed
Revision 1.30 / (download) - annotate - [select for diffs], Sun Feb 21 08:05:51 2021 UTC (23 months, 2 weeks ago) by rillig
Branch: MAIN
Changes since 1.29: +2 -1
lines
Diff to previous 1.29 (colored)
lint: add another test for C99 initializers
Revision 1.29 / (download) - annotate - [select for diffs], Fri Feb 19 12:28:56 2021 UTC (23 months, 2 weeks ago) by rillig
Branch: MAIN
Changes since 1.28: +2 -2
lines
Diff to previous 1.28 (colored)
lint: warn about mismatch in getopt handling
Revision 1.28 / (download) - annotate - [select for diffs], Mon Jan 18 20:02:34 2021 UTC (2 years ago) by rillig
Branch: MAIN
Changes since 1.27: +3 -2
lines
Diff to previous 1.27 (colored)
lint: clean up code (mostly comments)
Revision 1.27 / (download) - annotate - [select for diffs], Sun Jan 17 23:00:41 2021 UTC (2 years ago) by rillig
Branch: MAIN
Changes since 1.26: +2 -1
lines
Diff to previous 1.26 (colored)
lint: add more tests for system headers in strict bool mode
Revision 1.26 / (download) - annotate - [select for diffs], Thu Jan 14 22:18:14 2021 UTC (2 years ago) by rillig
Branch: MAIN
Changes since 1.25: +2 -2
lines
Diff to previous 1.25 (colored)
lint: add tests for newly added messages for strict bool mode
Revision 1.25 / (download) - annotate - [select for diffs], Sun Jan 10 21:26:12 2021 UTC (2 years ago) by rillig
Branch: MAIN
Changes since 1.24: +31 -20
lines
Diff to previous 1.24 (colored)
lint: allow custom flags to be specified in all unit tests Previously, only the tests called msg_*.c could use this feature. Since it is useful for other tests as well, enable it everywhere.
Revision 1.24 / (download) - annotate - [select for diffs], Sun Jan 10 18:06:38 2021 UTC (2 years ago) by rillig
Branch: MAIN
Changes since 1.23: +2 -1
lines
Diff to previous 1.23 (colored)
lint: add test for triggering assertion failures in lint1
Revision 1.23 / (download) - annotate - [select for diffs], Sun Jan 10 17:43:46 2021 UTC (2 years ago) by rillig
Branch: MAIN
Changes since 1.22: +2 -1
lines
Diff to previous 1.22 (colored)
lint: add test for treating _Bool as non-scalar type This strict mode is not yet implemented. The plan is to use it for usr.bin/make, to get rid of the many possible variants of defining the Boolean type in make.h. These variants did find some bugs, but not reliably so. Using static analysis seems more promising for this. In an early stage of developing this test, lint1 crashed in the enum definition in line 213, where the node for the '?:' had been NULL. This can happen in other situations as well, such as with syntax errors, but these should be rare, as lint is usually only run if the compiler has accepted the source code. Still, there should not be any assertion failures while running lint1.
Revision 1.22 / (download) - annotate - [select for diffs], Sun Jan 10 11:24:42 2021 UTC (2 years ago) by rillig
Branch: MAIN
Changes since 1.21: +2 -1
lines
Diff to previous 1.21 (colored)
lint: demonstrate wrong handling of conversion to _Bool
Revision 1.21 / (download) - annotate - [select for diffs], Sat Jan 9 14:33:53 2021 UTC (2 years ago) by rillig
Branch: MAIN
Changes since 1.20: +18 -3
lines
Diff to previous 1.20 (colored)
lint: allow tests to specify additional flags Several of the tests only need to add the -p flag. Mentioning the (current) default flags in each of these tests is redundant. Therefore, allow them to specify "lint1-extra-flags: -p" instead of the current "lint1-flags: -g -S -w -p".
Revision 1.20 / (download) - annotate - [select for diffs], Sat Jan 2 19:22:42 2021 UTC (2 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.19: +6 -5
lines
Diff to previous 1.19 (colored)
lint: fix integration test The body of an ATF test must never return 1 but instead report failure via atf_fail. Otherwise the following error message appears: Failed: Test case body returned a non-ok exit code, but this is not allowed The test program t_integration intentionally bypasses the official ATF API for performance reasons. But even then, it should stick to the API as close as possible.
Revision 1.19 / (download) - annotate - [select for diffs], Sat Jan 2 11:12:34 2021 UTC (2 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.18: +6 -4
lines
Diff to previous 1.18 (colored)
lint: demonstrate that -t mode is practically unusable Since main1.c from 2014-04-18, running lint in -t mode produces strange warnings in lines 1 to 3 of no file at all. This is caused by the builtins that are parsed in main(). These builtins are incompatible with traditional mode because they use long double, which had not been known at that time.
Revision 1.18 / (download) - annotate - [select for diffs], Sat Jan 2 10:22:44 2021 UTC (2 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.17: +20 -1
lines
Diff to previous 1.17 (colored)
lint: add a test for each message produced by lint1 Having a test for each message ensures that upcoming refactorings don't break the basic functionality. Adding the tests will also discover previously unknown bugs in lint. The tests ensure that every lint message can actually be triggered, and they demonstrate how to do so. Having a separate file for each test leaves enough space for documenting historical anecdotes, rationale or edge cases, keeping them away from the source code. The interesting details of this commit are in Makefile and t_integration.sh. All other files are just auto-generated. When running the tests as part of ATF, they are packed together as a single test case. Conceptually, it would have been better to have each test as a separate test case, but ATF quickly becomes very slow as soon as a test program defines too many test cases, and 50 is already too many. The time complexity is O(n^2), not O(n) as one would expect. It's the same problem as in tests/usr.bin/make, which has over 300 test cases as well.
Revision 1.17 / (download) - annotate - [select for diffs], Fri Jan 1 16:50:47 2021 UTC (2 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.16: +2 -1
lines
Diff to previous 1.16 (colored)
lint: demonstrate bug in handling of nested C9X struct initializers
Revision 1.16 / (download) - annotate - [select for diffs], Fri Jan 1 01:07:08 2021 UTC (2 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.15: +2 -1
lines
Diff to previous 1.15 (colored)
lint: fix segmentation fault when checking returned enum types (211)
Revision 1.15 / (download) - annotate - [select for diffs], Thu Dec 31 18:51:28 2020 UTC (2 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.14: +2 -1
lines
Diff to previous 1.14 (colored)
lint: check that in "if (cond)", cond is scalar
Revision 1.14 / (download) - annotate - [select for diffs], Wed Dec 30 13:42:19 2020 UTC (2 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.13: +5 -7
lines
Diff to previous 1.13 (colored)
lint: remove a bit of redundancy from the test suite
Revision 1.13 / (download) - annotate - [select for diffs], Wed Dec 30 13:15:07 2020 UTC (2 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.12: +2 -1
lines
Diff to previous 1.12 (colored)
lint: add test for old style function arguments
Revision 1.12 / (download) - annotate - [select for diffs], Mon Dec 28 17:00:37 2020 UTC (2 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.11: +16 -16
lines
Diff to previous 1.11 (colored)
lint1: remove redundant description from tests
Revision 1.11 / (download) - annotate - [select for diffs], Mon Dec 28 12:47:39 2020 UTC (2 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.10: +20 -2
lines
Diff to previous 1.10 (colored)
lint1: add forgotten tests
Revision 1.10 / (download) - annotate - [select for diffs], Mon Dec 28 12:17:23 2020 UTC (2 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.9: +55 -57
lines
Diff to previous 1.9 (colored)
lint1: use tabular layout for listing the test cases
Revision 1.9 / (download) - annotate - [select for diffs], Mon Dec 28 12:01:24 2020 UTC (2 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.8: +54 -56
lines
Diff to previous 1.8 (colored)
lint1: remove redundancy from test definitions Whether a test is supposed to produce lint warnings is determined by the corresponding .exp file. There is no need to encode this information redundantly in the test driver.
Revision 1.8 / (download) - annotate - [select for diffs], Mon Dec 28 11:19:01 2020 UTC (2 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.7: +3 -3
lines
Diff to previous 1.7 (colored)
lint1: enable test cvt_constant This test had never been enabled. In t_integration.sh 1.3 from 2014-04-17 it was supposed to be enabled, but due to a line continuation backslash, the words "test_case check_valid" ended up as the description of the previous test, cvt_in_ternary. While here, add the expected test output for d_struct_init_nested to FILES.
Revision 1.7 / (download) - annotate - [select for diffs], Mon Dec 28 10:22:21 2020 UTC (2 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.6: +3 -1
lines
Diff to previous 1.6 (colored)
lint1: add test for initializing nested structs Discovered in var.c 1.774 from 2020-12-28.
Revision 1.6 / (download) - annotate - [select for diffs], Mon Dec 28 09:58:56 2020 UTC (2 years, 1 month ago) by rillig
Branch: MAIN
Changes since 1.5: +6 -3
lines
Diff to previous 1.5 (colored)
lint: for tests with output, ensure that the output matches
Revision 1.5 / (download) - annotate - [select for diffs], Thu Jun 25 11:12:03 2020 UTC (2 years, 7 months ago) by jruoho
Branch: MAIN
Changes since 1.4: +2 -2
lines
Diff to previous 1.4 (colored)
Reference PRs consistently.
Revision 1.1.4.1 / (download) - annotate - [select for diffs], Wed Aug 20 00:04:53 2014 UTC (8 years, 5 months ago) by tls
Branch: tls-maxphys
Changes since 1.1: +6 -2
lines
Diff to previous 1.1 (colored) next main 1.2 (colored)
Rebase to HEAD as of a few days ago.
Revision 1.2.2.1 / (download) - annotate - [select for diffs], Sun Aug 10 06:57:37 2014 UTC (8 years, 6 months ago) by tls
Branch: tls-earlyentropy
Changes since 1.2: +5 -2
lines
Diff to previous 1.2 (colored) next main 1.3 (colored)
Rebase.
Revision 1.1.2.3 / (download) - annotate - [select for diffs], Thu May 22 11:42:24 2014 UTC (8 years, 8 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.1.2.2: +6 -2
lines
Diff to previous 1.1.2.2 (colored) to branchpoint 1.1 (colored) next main 1.2 (colored)
sync with head. for a reference, the tree before this commit was tagged as yamt-pagecache-tag8. this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
Revision 1.4 / (download) - annotate - [select for diffs], Mon Apr 21 19:10:41 2014 UTC (8 years, 9 months ago) by christos
Branch: MAIN
CVS Tags: yamt-pagecache-base9,
tls-maxphys-base,
tls-earlyentropy-base,
prg-localcount2-base3,
prg-localcount2-base2,
prg-localcount2-base1,
prg-localcount2-base,
prg-localcount2,
phil-wifi-base,
phil-wifi-20200421,
phil-wifi-20200411,
phil-wifi-20200406,
phil-wifi-20191119,
phil-wifi-20190609,
phil-wifi,
pgoyette-localcount-base,
pgoyette-localcount-20170426,
pgoyette-localcount-20170320,
pgoyette-localcount-20170107,
pgoyette-localcount-20161104,
pgoyette-localcount-20160806,
pgoyette-localcount-20160726,
pgoyette-localcount,
pgoyette-compat-merge-20190127,
pgoyette-compat-base,
pgoyette-compat-20190127,
pgoyette-compat-20190118,
pgoyette-compat-1226,
pgoyette-compat-1126,
pgoyette-compat-1020,
pgoyette-compat-0930,
pgoyette-compat-0906,
pgoyette-compat-0728,
pgoyette-compat-0625,
pgoyette-compat-0521,
pgoyette-compat-0502,
pgoyette-compat-0422,
pgoyette-compat-0415,
pgoyette-compat-0407,
pgoyette-compat-0330,
pgoyette-compat-0322,
pgoyette-compat-0315,
pgoyette-compat,
perseant-stdc-iso10646-base,
perseant-stdc-iso10646,
netbsd-9-base,
netbsd-9-3-RELEASE,
netbsd-9-2-RELEASE,
netbsd-9-1-RELEASE,
netbsd-9-0-RELEASE,
netbsd-9-0-RC2,
netbsd-9-0-RC1,
netbsd-9,
netbsd-8-base,
netbsd-8-2-RELEASE,
netbsd-8-1-RELEASE,
netbsd-8-1-RC1,
netbsd-8-0-RELEASE,
netbsd-8-0-RC2,
netbsd-8-0-RC1,
netbsd-8,
netbsd-7-nhusb-base-20170116,
netbsd-7-nhusb-base,
netbsd-7-nhusb,
netbsd-7-base,
netbsd-7-2-RELEASE,
netbsd-7-1-RELEASE,
netbsd-7-1-RC2,
netbsd-7-1-RC1,
netbsd-7-1-2-RELEASE,
netbsd-7-1-1-RELEASE,
netbsd-7-1,
netbsd-7-0-RELEASE,
netbsd-7-0-RC3,
netbsd-7-0-RC2,
netbsd-7-0-RC1,
netbsd-7-0-2-RELEASE,
netbsd-7-0-1-RELEASE,
netbsd-7-0,
netbsd-7,
matt-nb8-mediatek-base,
matt-nb8-mediatek,
localcount-20160914,
is-mlppp-base,
is-mlppp,
bouyer-socketcan-base1,
bouyer-socketcan-base,
bouyer-socketcan
Changes since 1.3: +3 -2
lines
Diff to previous 1.3 (colored)
disable the extension test for now.
Revision 1.3 / (download) - annotate - [select for diffs], Thu Apr 17 18:34:44 2014 UTC (8 years, 9 months ago) by christos
Branch: MAIN
Changes since 1.2: +4 -2
lines
Diff to previous 1.2 (colored)
add more tests
Revision 1.2 / (download) - annotate - [select for diffs], Tue Feb 4 08:08:59 2014 UTC (9 years ago) by njoly
Branch: MAIN
CVS Tags: riastradh-xf86-video-intel-2-7-1-pre-2-21-15,
riastradh-drm2-base3
Branch point for: tls-earlyentropy
Changes since 1.1: +2 -1
lines
Diff to previous 1.1 (colored)
Handle another declaration after statement case for lint in c99 mode. Add the corresponding testcase.
Revision 1.1.2.2 / (download) - annotate - [select for diffs], Tue Apr 17 00:09:23 2012 UTC (10 years, 9 months ago) by yamt
Branch: yamt-pagecache
CVS Tags: yamt-pagecache-tag8
Changes since 1.1.2.1: +128 -0
lines
Diff to previous 1.1.2.1 (colored) to branchpoint 1.1 (colored)
sync with head
Revision 1.1.2.1, Sat Mar 17 16:33:16 2012 UTC (10 years, 10 months ago) by yamt
Branch: yamt-pagecache
Changes since 1.1: +0 -128
lines
FILE REMOVED
file t_integration.sh was added on branch yamt-pagecache on 2012-04-17 00:09:23 +0000
Revision 1.1 / (download) - annotate - [select for diffs], Sat Mar 17 16:33:16 2012 UTC (10 years, 10 months ago) by jruoho
Branch: MAIN
CVS Tags: yamt-pagecache-base8,
yamt-pagecache-base7,
yamt-pagecache-base6,
yamt-pagecache-base5,
yamt-pagecache-base4,
riastradh-drm2-base2,
riastradh-drm2-base1,
riastradh-drm2-base,
riastradh-drm2,
agc-symver-base,
agc-symver
Branch point for: yamt-pagecache,
tls-maxphys
Deprecate tests/util.