--- - branch: MAIN date: Tue Apr 6 21:59:58 UTC 2021 files: - new: '1.4' old: '1.3' path: src/tests/usr.bin/xlint/lint1/msg_118.c pathrev: src/tests/usr.bin/xlint/lint1/msg_118.c@1.4 type: modified - new: '1.271' old: '1.270' path: src/usr.bin/xlint/lint1/tree.c pathrev: src/usr.bin/xlint/lint1/tree.c@1.271 type: modified id: 20210406T215958Z.60965b2c90dfb51bf37221f7e8f822d836c1738d log: | lint: for shift in C99 mode, do not warn about difference to pre-C90 C99 is too far away from traditional C to make this warning useful. There are 3 different situations in which this warning is generated: For '1 << (unsigned char)1', the result type is 'unsigned int' in traditional C. The result type is unsigned because at least 1 of the operators is unsigned, and it is 'unsigned int' because the usual arithmetic promotions are applied. For '1 >> (long)1', as well as for '1 << (long)1', the result type is 'long' in traditional C since the usual arithmetic promotions are applied. Omitting this warning in C99 mode reduces the amount of lint warnings in a typical NetBSD release build by approximately 6800 of 107000 total. module: src subject: 'CVS commit: src' unixtime: '1617746398' user: rillig