aboutsummaryrefslogtreecommitdiffstats
path: root/symbol.c
AgeCommit message (Expand)AuthorFilesLines
2021-01-22handle qualified anonymous structuresLuc Van Oostenryck1-0/+28
2020-12-29packed: add support for __packed structLuc Van Oostenryck1-3/+9
2020-10-20Merge branch 'bf-sign' into nextLuc Van Oostenryck1-2/+2
2020-10-19Merge branch 'builtin-atomic' into nextLuc Van Oostenryck1-0/+6
2020-10-19builtin: add builtin type: [volatile] pointer to boolLuc Van Oostenryck1-0/+3
2020-10-14flex-array: fix typo in warning messageLuc Van Oostenryck1-1/+1
2020-10-14builtin: add builtin type for volatile void *Luc Van Oostenryck1-0/+3
2020-10-09flex-array: fix location for nesting of flexible membersLuc Van Oostenryck1-1/+1
2020-10-09flex-array: allow arrays of unions with flexible members.Ilya Maximets1-1/+1
2020-10-06Merge branch 'flex-array-base'Luc Van Oostenryck1-18/+30
2020-10-04add builtin types for size_t*, intmax_t* & ptrdiff_t*Luc Van Oostenryck1-0/+8
2020-10-04add builtin types for signed char* and short *Luc Van Oostenryck1-0/+3
2020-10-04add builtin type for wide stringsLuc Van Oostenryck1-0/+8
2020-10-01flex-array: warn on flexible array in nested aggregate typesLuc Van Oostenryck1-0/+4
2020-10-01flex-array: warn an arrays containing a flexible arrayLuc Van Oostenryck1-0/+2
2020-10-01flex-array: identify structures with a flexible array memberLuc Van Oostenryck1-0/+6
2020-10-01flex-array: warn if flexible array is not lastLuc Van Oostenryck1-0/+2
2020-10-01flex-array: warn on flexible arrays in unionsLuc Van Oostenryck1-0/+3
2020-10-01flex-array: detect structures with a flexible array memberLuc Van Oostenryck1-0/+2
2020-10-01flex-array: flexible array members have zero size and alignment is OKLuc Van Oostenryck1-1/+0
2020-10-01flex-array: do not lay out invalid struct membersLuc Van Oostenryck1-2/+4
2020-10-01flex-array: factor out common part of lay_out_{struct,union}()Luc Van Oostenryck1-16/+8
2020-09-16teach sparse about -funsigned-bitfieldsLuc Van Oostenryck1-2/+2
2020-08-08wstring: add support for examination of string initializationLuc Van Oostenryck1-0/+25
2020-07-22add position to struct streamLuc Van Oostenryck1-1/+1
2020-07-19prepend diagnostics with source's path and include chainLuc Van Oostenryck1-1/+1
2020-07-14arch: allow target specific [u]intptr_t & ptrdiff_tLuc Van Oostenryck1-0/+7
2020-06-12builtin: can be initialized laterLuc Van Oostenryck1-1/+0
2020-05-21scope: extract bind_symbol_with_scope() from bind_symbol()Luc Van Oostenryck1-4/+9
2020-03-24add support for GCC's __auto_typeLuc Van Oostenryck1-0/+19
2019-12-15typeof: avoid using is_bitfield_type()Luc Van Oostenryck1-2/+2
2019-12-15typeof: extract examine_typeof() from examine_symbol_type()Luc Van Oostenryck1-20/+21
2019-11-30bitfield: display the bitfield name in error messagesLuc Van Oostenryck1-1/+2
2019-11-30bitfield: oversized bitfields are errorsLuc Van Oostenryck1-2/+4
2019-11-30bitfield: don't warn twice on invalid widthLuc Van Oostenryck1-3/+2
2019-11-28spec: replace lllong_ctype by int128_ctypeLuc Van Oostenryck1-4/+4
2019-11-26Merge branch 'parse-spec' into masterLuc Van Oostenryck1-58/+77
2019-11-26Merge branch 'static-forward' into masterLuc Van Oostenryck1-0/+23
2019-11-25spec: get rid of all specifier MOD_XXXLuc Van Oostenryck1-43/+42
2019-11-25spec: make ctype_declare[] more readableLuc Van Oostenryck1-51/+71
2019-11-21allow 'static' forward declarationLuc Van Oostenryck1-0/+23
2019-11-21let function definition inherit prototype attributesLuc Van Oostenryck1-0/+9
2019-11-10Merge branch 'eval-typeof' into nextLuc Van Oostenryck1-4/+5
2019-11-10typeof: fix up comment in examine_pointer_type()Luc Van Oostenryck1-4/+5
2019-11-03remove unneeded MOD_TYPELuc Van Oostenryck1-1/+1
2019-11-03remove unused SYM_TYPEDEFLuc Van Oostenryck1-1/+0
2019-11-03remove unused SYM_MEMBERLuc Van Oostenryck1-1/+0
2018-12-12as-named: warn on bad address spaceLuc Van Oostenryck1-2/+2
2018-12-12as-name: use idents for address spacesLuc Van Oostenryck1-2/+2
2018-06-08builtin: add builtin types {u,}{int,long,long}_ptr_ctypeLuc Van Oostenryck1-0/+9
2018-05-21Merge branch 'doc-sphinx' into tipLuc Van Oostenryck1-0/+1
2018-05-21api: move evaluate interface to its own header fileLuc Van Oostenryck1-0/+1
2018-05-06Merge branches 'unop', 'describe-dirty', 'range-syntax', 'old-testcases', 'fi...Luc Van Oostenryck1-1/+1
2018-05-06fix: don't dump pointer value in error messageLuc Van Oostenryck1-1/+1
2018-05-04teach sparse about _Floatn and _FloatnxLuc Van Oostenryck1-0/+14
2018-02-17builtin: add ctype for const {void,char} *Luc Van Oostenryck1-0/+7
2018-02-05fix examination of bad typeofLuc Van Oostenryck1-1/+3
2018-01-07Merge branches 'fmax-warnings', 'funsigned-char', 'testcase-fix-missing-retur...Luc Van Oostenryck1-0/+6
2017-12-29add support for '-f[no-][un]signed-char'Luc Van Oostenryck1-0/+6
2017-12-28fix implicit size of unsized arraysLuc Van Oostenryck1-1/+18
2017-11-11Merge branches 'volatile-loads-are-side-effects', 'fix-volatile-simplificatio...Luc Van Oostenryck1-2/+2
2017-11-08MOD_ACCESSED is not a type modifier ...Luc Van Oostenryck1-2/+2
2017-07-04Let create_symbol check for previous same symbolChristopher Li1-3/+12
2017-02-13move evaluation & expansion of builtins in a separate fileLuc Van Oostenryck1-159/+1
2017-02-13some modifiers need to be preserved by 'typeof()'Luc Van Oostenryck1-2/+6
2016-02-04Fix size calculation of unsized bool arrayLuc Van Oostenryck1-1/+1
2014-08-02Fix scoping of extern symbols in block scopeLinus Torvalds1-5/+6
2014-07-17round up the array element size to byte alignChristopher Li1-1/+2
2014-07-16sparse: make bits_to_bytes round up instead of downJeff Layton1-1/+1
2014-04-01Use any previous initializer to size a symbolLinus Torvalds1-6/+18
2013-11-29sparse: Relicense under the MIT licenseFranz Schrober1-1/+17
2013-05-23symbol.c: Set correct size of array from parenthesized string initializerRamsay Jones1-4/+26
2013-04-08Proper variable length array warningChristopher Li1-4/+11
2011-05-31Remove set but not used variableChristopher Li1-3/+1
2009-08-01Add support for TImode type (__int128_t)Blue Swirl1-0/+6
2009-07-19move extern inline function to file scopeChristopher Li1-1/+5
2009-07-17Take the rest of specifiers to parse.cAl Viro1-42/+6
2009-07-17Take the rest of storage class keywords to parse.cAl Viro1-6/+0
2008-12-28Warn about explicit usage of sizeof(void)Christopher Li1-1/+1
2008-12-18Let void have sizeof 1Alexey Zaytsev1-1/+1
2008-12-18Looks more evident this way.Alexey Zaytsev1-1/+1
2008-12-17Unhardcode byte size being 8 bits.David Given1-5/+5
2008-06-11Remove symbol.id_listAlexey Zaytsev1-2/+2
2007-07-14[PATCH] deal correctly with qualifiers on arraysAl Viro1-18/+19
2007-07-13new get_type_name functionRob Taylor1-0/+29
2007-07-13add end position to symbolsRob Taylor1-0/+1
2007-07-08first pass at null pointer constantsAl Viro1-1/+3
2007-07-08fix the comma handling in integer constant expressionsAl Viro1-0/+1
2007-06-18[PATCH] fix handling of typeof on structsAl Viro1-1/+6
2007-05-26fix interaction of typeof with bitwise typesAl Viro1-0/+6
2007-05-26fix alignment for _BoolAl Viro1-1/+1
2007-03-09Fix typos in commentsJosh Triplett1-2/+2
2007-03-07Free up some special bits in modifiers.Josh Triplett1-34/+1
2006-11-21double inclusionsNicolas Kaiser1-1/+0
2006-11-06Typo fixesPavel Roskin1-1/+1
2006-10-01[PATCH] handle fouled-bitwiseAl Viro1-0/+38
2006-09-30[PATCH] add support for __builtin_choose_expr()Al Viro1-0/+45
2006-08-30[PATCH] Parse and track multiple contexts by expressionJosh Triplett1-2/+7
2006-07-31First cut at something that approaches a sane -WshadowLinus Torvalds1-10/+9
2006-05-09[PATCH] count_array_initializer() needs to know the type of elementAl Viro1-8/+24
2005-11-16Re-name "error()" function to "sparse_error()"Linus Torvalds1-5/+5
2005-09-22[PATCH] replaced warnings with errors.Mitesh Shah1-5/+5
2005-09-09Warn about undefined preprocessor symbols at expansion time, not parse timeLinus Torvalds1-0/+1
2005-08-17[PATCH] enum: improve error messagesOleg Nesterov1-5/+0
2005-08-17[PATCH] enum: fix sparse segfault with incomplete enumOleg Nesterov1-1/+1
2005-08-02Make types have file scope, not global scopeLinus Torvalds1-4/+6
2005-08-02Make macros have file scopeLinus Torvalds1-0/+2
2005-06-21[PATCH] Fix compile warning in symbol.cMika Kukkonen1-1/+1
2005-06-19Initial cut at __builtin_expect() implementationLinus Torvalds1-0/+22
2005-06-16Fix up type examination.Linus Torvalds1-4/+2
2005-04-07[PATCH] static declearChristopher Li1-1/+1
2005-04-07Fix array size calculation when the last entry is an EXPR_INDEX.Linus Torvalds1-2/+2
2005-04-07Toplevel symbols are externally addressable only if theyLinus Torvalds1-1/+3
2005-04-07Split out the blob allocator from lib.c into allocate.c.Linus Torvalds1-0/+1
2005-04-07Update copyright notices a bit.Linus Torvalds1-1/+1
2005-04-07Fix __typeof__ size evaluation.Linus Torvalds1-0/+1
2005-04-07Make "translation_unit()" do symbol evaluation too.Linus Torvalds1-2/+2
2005-04-07enums, bitfields and nodes pick up their signednessLinus Torvalds1-1/+11
2005-04-07Set the bit_offset in the SYM_BITFIELD entry too, not justLinus Torvalds1-0/+1
2005-04-07Remove "fieldwidth" member of struct symbolLinus Torvalds1-10/+5
2005-04-07Fix up structure bitfield placement.Linus Torvalds1-1/+10
2005-04-07Examine bitfield symbols properly.Linus Torvalds1-1/+1
2005-04-07Make sure to examine restricted types too.Linus Torvalds1-0/+3
2005-04-07Use 'bad_type' instead of NULL when something bad happensLinus Torvalds1-6/+4
2005-04-07Implement a C99-like _Bool type.Linus Torvalds1-1/+2
2005-04-07Add comment on what caused type examination recursion.Linus Torvalds1-0/+6
2005-04-07Clean up symbol examination some more.Linus Torvalds1-53/+70
2005-04-07Don't recurse on struct/union symbol examine, if the struct Linus Torvalds1-0/+1
2005-04-07Do base_type examination in common code in examine_symbol_type().Linus Torvalds1-16/+14
2005-04-07Implement __builtin_safe_p() to match __builtin_constant_p.Linus Torvalds1-26/+10
2005-04-07Allow zero-sized array initializers.Linus Torvalds1-2/+1
2005-04-07Do array sizing at "examine_symbol_type()" time.Linus Torvalds1-25/+78
2005-04-07Replace context/contextmask (never used) with in_context/out_context.Linus Torvalds1-2/+2
2005-04-07Get rid of the old "iterate()" interfaces.Linus Torvalds1-7/+7
2005-04-07Make "bind_symbol()" also set sym->ident.Linus Torvalds1-1/+3
2005-04-07Introduce the notion of "reserved" identifiers. Linus Torvalds1-4/+9
2005-04-07[PATCH] enum handlingAlexander Viro1-5/+15
2005-04-07Fix structure size calculation for structures with unsized arrays.Linus Torvalds1-6/+19
2005-04-07Add "__builtin_warning()" builtin.Linus Torvalds1-1/+57
2005-04-07[PATCH] recovery from typeof on expression with bad typeAlexander Viro1-2/+2
2005-04-07Many files:welinder@darter.rentec.com1-7/+7
2005-04-07symbol.h, symbol.c:welinder@troll.com1-29/+38
2005-04-07More "union" trouble: don't look at ctype for non-NS_SYMBOL.Linus Torvalds1-1/+1
2005-04-07Sanitize base type declarations some more.Linus Torvalds1-41/+42
2005-04-07We need to initialize the type of the fundamental base types.Linus Torvalds1-0/+1
2005-04-07[PATCH] make preprocesser command a symbolChristopher Li1-1/+4
2005-04-07Make END_FOR_EACH_PTR[_REVERSE] take the ptr name as an argument.Linus Torvalds1-1/+1
2005-04-07[PATCH] avoid matching idents with string comparesChristopher Li1-51/+6
2005-04-07Merge troll.com:/scratch/welinder/linus-sparsewelinder@troll.com1-3/+2
2005-04-07Fix up silly typo that caused __builtin_constant_p not to work on FP constants.Linus Torvalds1-1/+1
2005-04-07symbol.c:welinder@troll.com1-3/+2
2005-04-07Make "next_path" be per-stream for better "include_next".Linus Torvalds1-1/+1
2005-04-07Unnamed bitfields should not affect structure and union alignment.welinder@troll.com1-5/+14
2005-04-07fix layout of zero-width bitfields.welinder@troll.com1-6/+9
2005-04-07Disallow sizeof/alignof/typeof on bitfields.welinder@troll.com1-0/+2
2005-04-07Handle __func__ correctly as a variable and not a #define.welinder@troll.com1-0/+2
2005-04-07Mondane cleanups at the level of typos.welinder@troll.com1-2/+2
2005-04-07Don't complain over sign problems with unnamed bitfields.welinder@troll.com1-13/+0
2005-04-07parse.c:welinder@troll.com1-3/+9
2005-04-07symbol.c:welinder@troll.com1-1/+10
2005-04-07Make expression expansion calculate the "cost" of theLinus Torvalds1-1/+2
2005-04-07Make the lazy pointer evaluation marker explicit.Linus Torvalds1-1/+4
2005-04-07Simplify "typeof" handling.Linus Torvalds1-16/+4
2005-04-07[PATCH] strip modifiers and address space in "typeof()"Alexander Viro1-2/+21
2005-04-07[PATCH] VLA warnings sanitized.Alexander Viro1-1/+1
2005-04-07[PATCH] FP handlingAlexander Viro1-1/+1
2005-04-07Introduce a "incomplete type" rather than leavingLinus Torvalds1-2/+2
2005-04-07Use "-O" to compile sparse, to make the compiler warn more.Linus Torvalds1-2/+3
2005-04-07Accept "__attribute" in addition to "__attribute__".Linus Torvalds1-1/+1
2005-04-07Initialize C type system after parsing the command line arguments.Linus Torvalds1-1/+5
2005-04-07Now that BITS_IN_XXXX aren't defined contstants any more,Linus Torvalds1-24/+24
2005-04-07Use variables for target data structure information, Linus Torvalds1-27/+28
2005-04-07Make the builtin functions be more type-correct, toLinus Torvalds1-1/+3
2005-04-07Fix up typename parsing.Linus Torvalds1-6/+6
2005-04-07Top-level symbols are always addressable, since they areLinus Torvalds1-1/+1
2005-04-07Support C types as first-class citizens, allowing typeLinus Torvalds1-1/+2
2005-04-07Make it possible to look up multiple namespaces at onceLinus Torvalds1-1/+1
2005-04-07Allow variable-sized array size declarations.Linus Torvalds1-2/+2
2005-04-07[PATCH] support __VA_ARGS__ variable macro argumentsChristopher Li1-1/+11
2005-04-07Update copyright notices to reflect the fact that TransmetaLinus Torvalds1-0/+1
2005-04-07Split tree evaluation into two phases: the first phaseLinus Torvalds1-5/+14
2005-04-07This makes function inlining largely work correctly. In orderLinus Torvalds1-1/+3
2005-04-07Get rid of "#pragma" lines for now, while still keeping aLinus Torvalds1-0/+3
2005-04-07Don't try to give typdefs storage bits.Linus Torvalds1-1/+1
2005-04-07Parse and evaluate gcc computed goto extensions: label addressingLinus Torvalds1-1/+4
2005-04-07Fxi up the builtin function evaluation. We really just wantLinus Torvalds1-3/+3
2005-04-07Add support for evaluating builtin functions at compile time.Linus Torvalds1-4/+40
2005-04-07Add "__volatile" and "__volatile__" for gcc compatibility.Linus Torvalds1-0/+2
2005-04-07Start updating the copyright license comments to the OSL,Linus Torvalds1-1/+13
2005-04-07Merge both node and array information at array degrade time.Linus Torvalds1-1/+1
2005-04-07Oops. Bad scoping for iterators and switch() statements. We didn'tLinus Torvalds1-0/+18
2005-04-07Yeah, well... More typeof() tweaking.Linus Torvalds1-7/+3
2005-04-07Whoops. More "typeof" confusion fixes.Linus Torvalds1-7/+8
2005-04-07Fix type merging at dereference evaluation time.Linus Torvalds1-1/+1
2005-04-07Fix typeof() type evaluation. I hope.Linus Torvalds1-3/+23
2005-04-07Make symbol addressing do something half-way sane.Linus Torvalds1-0/+1
2005-04-07Show iterators and goto's properly as pseudo-assembler.Linus Torvalds1-1/+3
2005-04-07Don't make the 'void' type point to itself. It confuses theLinus Torvalds1-1/+1
2005-04-07Mark a symbol as accessed if it's used during evaluation of the tree.Linus Torvalds1-0/+19
2005-04-07Don't add inline functions to the top-level parse tree. They'llLinus Torvalds1-1/+2