--- - branch: MAIN date: Sat Jul 10 20:44:24 UTC 2021 files: - new: '1.301' old: '1.300' path: src/usr.bin/xlint/lint1/cgram.y pathrev: src/usr.bin/xlint/lint1/cgram.y@1.301 type: modified id: 20210710T204424Z.8a0e9ff04701446862c039f55c93c6cbf1220a44 log: | lint: merge duplicate code for struct and enum tags This is a tricky area. Inlining identifier_sym did not work because of the side-effects of getsym. In situations where two identifiers of different kinds follow each other, such as 'enum id1 id2', the timing is crucial, and inlining identifier_sym would have led to an internal error in getsym. The symbol type has to be reset from FTAG to FVFT before reading the next token. No functional change. module: src subject: 'CVS commit: src/usr.bin/xlint/lint1' unixtime: '1625949864' user: rillig