aboutsummaryrefslogtreecommitdiffstatshomepage
AgeCommit message (Expand)AuthorFilesLines
2020-08-06bad-shift: wait dead code elimination to warn about bad shiftsLuc Van Oostenryck8-83/+78
2020-08-06shift-assign: restrict shift count to unsigned intLuc Van Oostenryck2-1/+5
2020-08-06shift-assign: fix linearization of shift-assignLuc Van Oostenryck4-11/+13
2020-08-06shift-assign: add more testcases for bogus linearizationLuc Van Oostenryck2-0/+374
2020-07-22add position to struct streamLuc Van Oostenryck5-12/+16
2020-07-19prepend diagnostics with source's path and include chainLuc Van Oostenryck6-17/+103
2020-07-18Merge branch 'error-inval-num'Luc Van Oostenryck5-2/+20
2020-07-18Merge branch 'empty-expr'Luc Van Oostenryck5-2/+32
2020-07-18Merge branch 'arch'Luc Van Oostenryck27-65/+726
2020-07-16predefine: let predefine_width() take the usual interfaceLuc Van Oostenryck1-3/+3
2020-07-15syntax errors in numbers are not fatalLuc Van Oostenryck1-1/+4
2020-07-14Merge branch 'keyword-tbl'Luc Van Oostenryck1-154/+132
2020-07-14Merge branch 'assert-opt-msg'Luc Van Oostenryck2-8/+21
2020-07-14Merge branch 'bad-shift-assign'Luc Van Oostenryck1-0/+115
2020-07-14warn on empty initializationsLuc Van Oostenryck2-2/+4
2020-07-14warn on empty assignmentsLuc Van Oostenryck3-2/+6
2020-07-14add testcase for incorrect empty expressionsLuc Van Oostenryck2-0/+24
2020-07-14x86-x32: fix it by defining a separate target for itLuc Van Oostenryck3-3/+41
2020-07-14arch: allow target specific [u]intptr_t & ptrdiff_tLuc Van Oostenryck8-6/+23
2020-07-14predefine: teach sparse about __SIG_ATOMIC_TYPE__Luc Van Oostenryck3-0/+3
2020-07-14arch: add predefines __INT_FAST${N}_TYPE__Luc Van Oostenryck17-1/+146
2020-07-14arch: add predefines __INT_LEAST${N}_TYPE__Luc Van Oostenryck4-0/+27
2020-07-13ppc: add predefines __LONGDOUBLE128 & __LONG_DOUBLE_128__Luc Van Oostenryck1-0/+4
2020-07-13alpha: has 64-bit long double & int128Luc Van Oostenryck1-0/+3
2020-07-13sparc: add 'sparcv8' predefines for sparc32Luc Van Oostenryck1-3/+16
2020-07-13Merge branches 'march', 'endianness', 'os' and 'arch-mini' into archLuc Van Oostenryck20-49/+460
2020-07-13fix evaluation error with assignment of qualified arraysLuc Van Oostenryck3-4/+2
2020-07-13openrisc: add minimal supportLuc Van Oostenryck5-0/+31
2020-07-13sh: add minimal supportLuc Van Oostenryck5-0/+33
2020-07-13nds32: add minimal supportLuc Van Oostenryck5-0/+33
2020-07-13xtensa: add minimal supportLuc Van Oostenryck5-0/+36
2020-07-13h8300: add minimal supportLuc Van Oostenryck5-0/+32
2020-07-13target: keep tables sortedLuc Van Oostenryck1-4/+4
2020-07-13arm: fix int32_t & uint32_t on bare-metal.Luc Van Oostenryck1-0/+9
2020-07-13cgcc: remove now unneeded options & definesLuc Van Oostenryck1-24/+8
2020-07-13cygwin: add the predefines '__cdecl', ...Luc Van Oostenryck1-0/+9
2020-07-13arch: add predefines for OS identificationLuc Van Oostenryck1-0/+19
2020-07-13sparc: char are unsigned on SolarisLuc Van Oostenryck1-0/+2
2020-07-13x86: fixes types for NetBSD & OpenBSDLuc Van Oostenryck1-0/+11
2020-07-13predefine: no __unix__ for DarwinLuc Van Oostenryck1-1/+1
2020-07-13predefine: add __linux__ & __linuxLuc Van Oostenryck1-1/+7
2020-07-13arch: add an option to specify the OS: --os=$OSLuc Van Oostenryck5-0/+52
2020-07-11teach sparse about -fmax-errorsLuc Van Oostenryck4-1/+16
2020-07-10add testcase for missing warning for assignment to constLuc Van Oostenryck1-0/+29
2020-07-10add another testcase with const array/pointerLuc Van Oostenryck1-0/+50
2020-07-09add a testcase for assignment to const <type> (*)[]Luc Van Oostenryck1-0/+7
2020-07-09x86: reorg the target fileLuc Van Oostenryck1-17/+35
2020-07-08keyword: use some macros to avoid duplicationLuc Van Oostenryck1-125/+98
2020-07-08keyword: reorder the keywordsLuc Van Oostenryck1-38/+34
2020-07-08keyword: reorganize the keyword tableLuc Van Oostenryck1-139/+148
2020-07-08arm: add predefine __ARMEL__ or __ARMEB__Luc Van Oostenryck1-0/+5
2020-07-08arm64: add predefine for endiannessLuc Van Oostenryck1-0/+5
2020-07-08mips: add predefines __MIPSEL__ or __MIPSEB__ & friendsLuc Van Oostenryck1-0/+10
2020-07-08c2x: message in _Static_assert() is now optionalLuc Van Oostenryck2-8/+21
2020-07-08nios2: add non-trailing double underscore predefinesLuc Van Oostenryck1-2/+7
2020-07-08nios2: long double is 64-bitLuc Van Oostenryck1-0/+2
2020-07-08Merge branches 'predef-fix', 'predef-helper' and 'simplify-add-pre-buffer'Luc Van Oostenryck7-9/+39
2020-07-07riscv: add the predefines for the extensionsLuc Van Oostenryck1-0/+19
2020-07-08riscv: parse '-march=....'Luc Van Oostenryck2-0/+81
2020-07-08arch: teach sparse about the '-march' optionLuc Van Oostenryck2-0/+9
2020-07-06predef: simplify add_pre_buffer()Luc Van Oostenryck1-6/+3
2020-07-06predefine: avoid add_pre_buffer() for targetsLuc Van Oostenryck2-2/+2
2020-07-06predefine: add helper predefine_{strong,weak}()Luc Van Oostenryck2-0/+28
2020-07-06predefine: fix multi-token predefineLuc Van Oostenryck1-1/+1
2020-07-06predefine: add testcase for multi-token predefinesLuc Van Oostenryck1-0/+5
2020-07-06testsuite: add testcase for bogus linearization of >>= & /=Luc Van Oostenryck1-0/+115
2020-07-06arch: add minimal support for microblazeLuc Van Oostenryck5-0/+30
2020-07-06Merge branch 'options'Luc Van Oostenryck11-1374/+1429
2020-07-06cleanup: move hexval() to utils.cLuc Van Oostenryck4-19/+21
2020-07-06cleanup: move parsing helpers to parse.cLuc Van Oostenryck4-42/+40
2020-07-05test-inspect: reset locale after gtk_init()Davidson Francis1-0/+2
2020-07-05Merge branch 'sindex-uchar'Luc Van Oostenryck1-2/+5
2020-07-05sindex: avoid a warning with 'case -1:'Luc Van Oostenryck1-2/+5
2020-07-05Merge branch 'arch-asm-mem'Luc Van Oostenryck4-2/+32
2020-07-05Merge branch 'cleanup-compat'Luc Van Oostenryck2-46/+2
2020-07-04add memory asm constraint for S390Luc Van Oostenryck1-0/+13
2020-07-04add memory asm constraint for PPCLuc Van Oostenryck1-0/+13
2020-07-04add support for arch specific asm constraintsLuc Van Oostenryck2-2/+6
2020-07-04testsuite: add new flag '-p' to subcommand 'format'Luc Van Oostenryck1-0/+4
2020-07-04avoid multiple warnings when inlining undeclared callsLuc Van Oostenryck2-0/+23
2020-07-02cleanup: move predefines in a separate fileLuc Van Oostenryck4-221/+227
2020-07-02options: keep the options sortedLuc Van Oostenryck2-115/+120
2020-07-02options: move option parsing in a separate fileLuc Van Oostenryck5-1096/+1134
2020-07-02options: add a small helper: handle_switch_finalize()Luc Van Oostenryck1-2/+7
2020-07-02options: move declaration of tabstop out of "token.h"Luc Van Oostenryck2-1/+1
2020-07-02options: avoid spaces between function name and arguments listLuc Van Oostenryck1-17/+17
2020-07-02options: alphasort the handle_switch_[a-zA_Z]()Luc Van Oostenryck1-301/+299
2020-07-02options: move helpers upLuc Van Oostenryck1-43/+44
2020-07-02options: handle_onoff_switch() can handle any flags, not only warningsLuc Van Oostenryck1-18/+18
2020-07-02options: make Wsparse_error less specialLuc Van Oostenryck1-2/+2
2020-07-02options: move on top the definition of warning type enumsLuc Van Oostenryck1-6/+6
2020-07-02options: move -Wsparse-all's processing out of handle_onoff_switch()Luc Van Oostenryck1-8/+8
2020-07-02options: let handle_onoff_switch() use null terminated arraysLuc Van Oostenryck1-9/+11
2020-06-28remove unneeded BSD & Solaris compatibility layerLuc Van Oostenryck2-46/+2
2020-06-23testsuite: fix 'format help' / validate number of argumentsLuc Van Oostenryck1-1/+6
2020-06-23teach sparse about __STDC_HOSTED__Luc Van Oostenryck4-0/+27
2020-06-23gensel: remove unneeded test/uninitialized warningLuc Van Oostenryck1-3/+1
2020-06-21Sparse v0.6.2v0.6.2Luc Van Oostenryck1-1/+1
2020-06-21doc: update release notesLuc Van Oostenryck1-3/+9
2020-06-21doc: add some info to the main pageLuc Van Oostenryck1-10/+30
2020-06-20doc: switch to the sphinx_rtd themeLuc Van Oostenryck1-1/+8
2020-06-20Merge branch 'fix-gensel'Luc Van Oostenryck3-3/+50
2020-06-20gensel: validate the type of the associationsLuc Van Oostenryck2-0/+24
2020-06-20gensel: controlling expression must be pointer-convertedLuc Van Oostenryck2-2/+3
2020-06-19gensel: controlling expression must be lvalue convertedLuc Van Oostenryck1-1/+4
2020-06-19gensel: use temporary variable in generic selectionLuc Van Oostenryck1-2/+4
2020-06-19gensel: add testcases from DR481Luc Van Oostenryck1-0/+17
2020-06-18Sparse v0.6.2-rc2v0.6.2-rc2Luc Van Oostenryck1-1/+1
2020-06-18Merge branch 'genmacro'Luc Van Oostenryck5-61/+151
2020-06-18pre-process: make __has_{attribute,builtin}() true builtin macrosLuc Van Oostenryck3-56/+32
2020-06-18pre-process: add support for __has_feature() & __has_extension()Luc Van Oostenryck3-1/+58
2020-06-18ir-validate: remove orphan commentsgarritfra1-7/+0
2020-06-18Merge branch 'misc'Luc Van Oostenryck4-16/+16
2020-06-18pre-process: add support for builtin macrosLuc Van Oostenryck2-0/+36
2020-06-18pre-process: rename 'expander' into 'expand_simple'Luc Van Oostenryck2-5/+5
2020-06-18pre-process: add testcases for __has_feature() & __has_extension()Luc Van Oostenryck1-0/+21
2020-06-16testsuite: be less paranoid with timeoutLuc Van Oostenryck1-1/+1
2020-06-16build: let the C++ compiler be configurableLuc Van Oostenryck1-1/+2
2020-06-16Merge branch 'sindex-build'Luc Van Oostenryck1-0/+7
2020-06-16doc: reformulate an item in the TODOLuc Van Oostenryck1-2/+2
2020-06-16doc: fix markup in types.rst (s/```/``/)Luc Van Oostenryck1-9/+9
2020-06-16doc: fix some typosLuc Van Oostenryck1-2/+2
2020-06-16doc: update TODOLuc Van Oostenryck1-1/+0
2020-06-16doc: copy the old relnotes hereLuc Van Oostenryck15-0/+2731
2020-06-16doc: add intro stolen from the wikiLuc Van Oostenryck1-0/+37
2020-06-15doc: minimal version for Sphinx is 1.7Luc Van Oostenryck1-1/+1
2020-06-16doc: fix code-block formatting in v0.6.2 relnotesLuc Van Oostenryck1-1/+1
2020-06-14attribute: parse but ignore enum attributesLuc Van Oostenryck1-0/+4
2020-06-14doc: reindent the sublists in the relnotesLuc Van Oostenryck1-69/+67
2020-06-14doc: correct some spellingRamsay Jones2-11/+11
2020-06-14sindex: use -stdc=gnu99Luc Van Oostenryck1-0/+1
2020-06-14sindex: minimal version for sqlite3 is 3.24Luc Van Oostenryck1-0/+6
2020-06-13Sparse v0.6.2-rc1v0.6.2-rc1Luc Van Oostenryck1-1/+1
2020-06-13doc: show the ToC in the sidebarLuc Van Oostenryck1-6/+1
2020-06-13doc: add release notes for incoming v0.6.2Luc Van Oostenryck3-0/+115
2020-06-12doc: add link to the doc on kernel.org in the man pageLuc Van Oostenryck1-0/+4
2020-06-12doc: move meta-doc to its own sectionLuc Van Oostenryck1-1/+7
2020-06-12doc: add some doc for the type systemLuc Van Oostenryck2-0/+166
2020-06-12ctype: keep modifiers & base_type closeLuc Van Oostenryck1-1/+1
2020-06-12Merge branch 'builtins'Luc Van Oostenryck12-245/+320
2020-06-12testsuite: plain chars are never compatible with [un]signed charsLuc Van Oostenryck1-0/+19
2020-06-12arch: add specificities for AlphaLuc Van Oostenryck6-9/+37
2020-06-12arch: add specificities for BlackfinLuc Van Oostenryck6-5/+31
2020-06-12arch: add specificities for Nios2Luc Van Oostenryck6-5/+36
2020-06-12builtin: add support for arch-specific builtinsLuc Van Oostenryck2-0/+8
2020-06-12builtin: unify the 2 tables of builtinsLuc Van Oostenryck2-95/+50
2020-06-12builtin: use a table for the builtinsLuc Van Oostenryck4-200/+227
2020-06-12builtin: can be initialized laterLuc Van Oostenryck2-1/+1
2020-06-09nios2: add declaration for __builtin_{rd,wr}ctl()Luc Van Oostenryck1-0/+5
2020-06-09generic: fix crash when nothing matchLuc Van Oostenryck2-2/+29
2020-06-06pre-process: remove unneeded declaration of show_token_sequence()Luc Van Oostenryck1-2/+0
2020-06-06pre-process: fix a compiler array subscript type warningRamsay Jones1-1/+1
2020-06-03univ-init: set default to -Wno-universal-initializerLuc Van Oostenryck2-5/+7
2020-06-03univ-init: scalar initializer needs some additional checksLuc Van Oostenryck5-7/+49
2020-05-30evaluate: mark evaluate_generic_selection() as staticRamsay Jones1-1/+1
2020-05-28add support for _GenericLuc Van Oostenryck8-0/+336
2020-05-27testsuite: add testcase for duplicated local definitionsLuc Van Oostenryck1-0/+28
2020-05-27add an option to suppress warning 'no newline at EOF'Luc Van Oostenryck4-1/+11
2020-05-21Merge branch 'univ'Luc Van Oostenryck7-0/+50
2020-05-21Merge branch 'bad-goto'Luc Van Oostenryck31-63/+617
2020-05-21univ-init: conditionally accept { 0 } without warningsLuc Van Oostenryck6-0/+43
2020-05-21Merge branch 'fun-attr'Luc Van Oostenryck7-55/+55
2020-05-21Merge branch 'doc-update'Luc Van Oostenryck3-28/+28
2020-05-21bad-label: respect attribute((unused))Luc Van Oostenryck4-1/+19
2020-05-21bad-label: mark labels as used when neededLuc Van Oostenryck3-6/+8
2020-05-21bad-label: check for unused labelsLuc Van Oostenryck2-1/+8
2020-05-21bad-goto: check declaration of label expressionsLuc Van Oostenryck3-2/+1
2020-05-21bad-goto: extract check_label_declaration()Luc Van Oostenryck1-6/+16
2020-05-21bad-goto: label expression inside a statement expression is UBLuc Van Oostenryck1-0/+1
2020-05-21bad-goto: jumping inside a statement expression is an errorLuc Van Oostenryck8-10/+27
2020-05-21scope: give a scope for labels & gotosLuc Van Oostenryck3-1/+12
2020-05-21scope: add is_in_scope()Luc Van Oostenryck2-0/+11
2020-05-21scope: let labels have their own scopeLuc Van Oostenryck3-2/+21
2020-05-21scope: s/{start,end}_symbol_scope/{start,end}_block_scope/Luc Van Oostenryck3-10/+10
2020-05-21scope: __label__ is specialLuc Van Oostenryck1-2/+1
2020-05-21scope: __func__ is specialLuc Van Oostenryck1-3/+2
2020-05-21scope: extract bind_symbol_with_scope() from bind_symbol()Luc Van Oostenryck2-4/+10
2020-05-21scope: move scope opening/ending inside compound_statement()Luc Van Oostenryck2-9/+6
2020-05-21scope: no memset() needed after __alloc_scope()Luc Van Oostenryck1-2/+0
2020-05-21bad-goto: catch labels with reserved namesLuc Van Oostenryck2-1/+2
2020-05-21bad-goto: do not linearize function with undeclared labelsLuc Van Oostenryck1-0/+1
2020-05-21bad-goto: simplify testing of undeclared labelsLuc Van Oostenryck1-1/+2
2020-05-21bad-goto: reorg test in evaluate_goto_statement()Luc Van Oostenryck1-3/+7
2020-05-21bad-goto: do not linearize if the IR will be invalidLuc Van Oostenryck2-1/+2
2020-05-21bad-goto: reorganize testcases and add some moreLuc Van Oostenryck18-13/+332
2020-05-21bad-goto: add testcases for linearization of invalid labelsLuc Van Oostenryck1-0/+19
2020-05-21bad-goto: add testcase for 'jump inside discarded expression statement'Luc Van Oostenryck2-0/+57
2020-05-21misc: always use the node for current_fnLuc Van Oostenryck2-3/+3
2020-05-21misc: s/fntype/rettype/Luc Van Oostenryck1-5/+6
2020-05-21misc: fix testcase typeof-safeLuc Van Oostenryck1-7/+20
2020-05-19testsuite: add a few testcases for nested functionsLuc Van Oostenryck1-0/+43
2020-05-19attribute: 'externally_visible' is just another 'declaration' modifierLuc Van Oostenryck4-18/+3
2020-05-19attribute: 'inline' is just another 'declaration' modifierLuc Van Oostenryck2-4/+4
2020-05-19attribute: '__tls' is just another 'declaration' modifierLuc Van Oostenryck2-5/+5
2020-05-18univ-init: add helper match_token_zero()Luc Van Oostenryck1-0/+7
2020-05-17attribute: teach sparse about attribute((gnu_inline))Luc Van Oostenryck3-4/+7
2020-05-17attribute: separate modifiers into type/declarationLuc Van Oostenryck2-6/+11
2020-05-17attribute: add support for unusedLuc Van Oostenryck3-3/+6
2020-05-17attribute: allow some attribute to be present multiple timesLuc Van Oostenryck2-1/+3
2020-05-17attribute: add helper apply_mod() and use itLuc Van Oostenryck1-7/+9