CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2010/07/24 16:17:03
Modified files:
include : stdbool.h complex.h
usr.bin/xlint/lint1: decl.c emit1.c externs1.h lint.h lint1.h
op.h scan.l tree.c
usr.bin/xlint/lint2: chk.c emit2.c read.c
Log message:
Teach lint about C99's _Bool and _Complex, plus some related gcc
extensions: __real__ and __imag__ operators, the use of '~' for
complex conjugation, and 'i' or 'j' as a suffix for complex constants.
While this doesn't handle folding and overflow detection for complex
constants correctly, it's good enough to make it through libm...and
found several bugs once it could do so.
"no objections" miod@, krw@