aboutsummaryrefslogtreecommitdiffstatshomepage
AgeCommit message (Expand)AuthorFilesLines
2005-04-07Make the license file be the OSL v1.1 with explanation ofLinus Torvalds1-25/+180
2005-04-07Evaluate initializer entry offsets, and add them back intoLinus Torvalds3-19/+65
2005-04-07Fix nested initializer evaluation (we should _not_Linus Torvalds1-12/+4
2005-04-07Evaluate structure and union initializers, including namedLinus Torvalds2-3/+49
2005-04-07Peter points out that the type masking shifts can overflowLinus Torvalds1-2/+2
2005-04-07Evaluate array initializers (type fixing and array indexLinus Torvalds2-19/+28
2005-04-07Print out the symbol name when we complain about re-declaring stuff withLinus Torvalds1-1/+2
2005-04-07Merge both node and array information at array degrade time.Linus Torvalds2-2/+3
2005-04-07Check for mismatched declarations using the new duplicateLinus Torvalds1-0/+18
2005-04-07Don't show bad expression types.Linus Torvalds1-1/+1
2005-04-07Oops. Bad scoping for iterators and switch() statements. We didn'tLinus Torvalds4-4/+27
2005-04-07Mark all function declarations automatically extern unless theyLinus Torvalds1-1/+9
2005-04-07The C type part and the preprocessor part of a symbol are supposedLinus Torvalds1-23/+25
2005-04-07Remove unused symbol list. We'll soon re-introduce it in another form,Linus Torvalds2-9/+0
2005-04-07Make arrays properly degenerate even if they are precededLinus Torvalds1-34/+45
2005-04-07Yeah, well... More typeof() tweaking.Linus Torvalds2-8/+4
2005-04-07Clean up silliness.Linus Torvalds1-1/+0
2005-04-07Whoops. More "typeof" confusion fixes.Linus Torvalds1-7/+8
2005-04-07Fix type merging at dereference evaluation time.Linus Torvalds3-3/+6
2005-04-07Make type warning messages more readable, and realizeLinus Torvalds1-17/+9
2005-04-07Fix typeof() type evaluation. I hope.Linus Torvalds1-3/+23
2005-04-07Get member access vs member pointer dereference types right.Linus Torvalds1-5/+9
2005-04-07Ignore MOD_TOPLEVEL and other "internal" modifiersLinus Torvalds1-1/+2
2005-04-07Make test-lexer output indentation.Linus Torvalds1-3/+8
2005-04-07Show expressions with no type as a separateLinus Torvalds1-0/+8
2005-04-07Make string constants evaluate as a proper array dereference.Linus Torvalds1-4/+23
2005-04-07We should _not_ look at the node modifiers/address_spaceLinus Torvalds1-14/+6
2005-04-07Make symbol addressing do something half-way sane.Linus Torvalds3-1/+12
2005-04-07Show switch- and case-statements in some half-way saneLinus Torvalds1-9/+10
2005-04-07Show if/label/asm statements in a saner format.Linus Torvalds3-23/+61
2005-04-07Show iterators and goto's properly as pseudo-assembler.Linus Torvalds4-42/+47
2005-04-07Turn 'break'/'continue' statements into goto's withLinus Torvalds5-24/+43
2005-04-07Don't warn about dereferences to noderef pointers - we don't know yetLinus Torvalds1-10/+7
2005-04-07Be much more careful about type evaluation for pointer addition,Linus Torvalds1-14/+22
2005-04-07Make symbol debugging print out the symbol address too.Linus Torvalds1-2/+3
2005-04-07Be more careful about checking for compatible pointer assignmentLinus Torvalds1-36/+27
2005-04-07Don't make the 'void' type point to itself. It confuses theLinus Torvalds1-1/+1
2005-04-07Fix up some address space evaluations. This is now alreadyLinus Torvalds1-6/+18
2005-04-07Hardcode "check.c" with enough pre-defines to work with myLinus Torvalds1-0/+13
2005-04-07Make type difference show size differences differentlyLinus Torvalds1-1/+3
2005-04-07Add "debug_symbol()" function that prints out the fullLinus Torvalds2-0/+27
2005-04-07Make sure that when we parse a pointer type, we properlyLinus Torvalds1-0/+6
2005-04-07Ignore sign differences for "same type". Make theLinus Torvalds1-37/+51
2005-04-07Fix up type warnings to point to the right position.Linus Torvalds1-5/+8
2005-04-07Fix the direct-call case. A call is a direct call if theLinus Torvalds1-6/+18
2005-04-07This should fix a macro argument expansion problem - we mark theLinus Torvalds1-2/+2
2005-04-07Add "check" program that just evaluates the tree and does nothingLinus Torvalds2-1/+116
2005-04-07Mark inline functions as accessed when they get called. We shouldLinus Torvalds1-1/+9
2005-04-07Clean up: mark local stuff 'static', and remove unused function.Linus Torvalds2-15/+6
2005-04-07Mark a symbol as accessed if it's used during evaluation of the tree.Linus Torvalds2-0/+25
2005-04-07Don't add inline functions to the top-level parse tree. They'llLinus Torvalds2-3/+5
2005-04-07Make the initializer show routine output a dummy insteadLinus Torvalds1-2/+7
2005-04-07Add function to show types as strings (instead of just printing them out).Linus Torvalds2-8/+42
2005-04-07Fix integer type checking.Linus Torvalds1-0/+6
2005-04-07Disable allocation statistics printing for now. Linus Torvalds1-0/+2
2005-04-07Evaluate and show return statement with proper type promotion.Linus Torvalds2-9/+50
2005-04-07Fix bitfield access code.Linus Torvalds1-7/+2
2005-04-07Ehheh! We'd better evaluate the type of the argument declarationLinus Torvalds1-1/+3
2005-04-07Show the expression parse tree as a sick kind of assembly language, which Linus Torvalds1-69/+147
2005-04-07Add "target.h" to the list of headers, to make dependencies come out right.Linus Torvalds1-1/+1
2005-04-07Fix up degenerate arrays to handle the string case (which isLinus Torvalds1-25/+42
2005-04-07Add macros to walk a list in parallel with another walker.Linus Torvalds1-1/+51
2005-04-07Make statement and expression printouts be more "linearized", andLinus Torvalds2-89/+207
2005-04-07Add nicer iterator for pointer lists - it's a complex macro,Linus Torvalds1-0/+21
2005-04-07Drop the MOD_ATTRIBUTE bit when parsing attributes.Linus Torvalds1-0/+1
2005-04-07String initializers are effectively constant, but don't mark themLinus Torvalds1-1/+1
2005-04-07oops. Warn about undefined preprocessor symbol names before weLinus Torvalds1-1/+1
2005-04-07Add a "preprocessing" flag, so that the expression evaluator canLinus Torvalds3-2/+13
2005-04-07Simplify typedef testing, and don't mess with MOD_EXTERNAL testingLinus Torvalds1-8/+8
2005-04-07Allow pointers to differ in certain modifier bits. For example,Linus Torvalds1-10/+23
2005-04-07Re-introduce MOD_ADDRESSABLE handling that got dropped withLinus Torvalds1-0/+7
2005-04-07Put a note about the horrible wrongness in doing the expansionLinus Torvalds1-0/+5
2005-04-07Evaluate logical expressions, and short-circuit it.Linus Torvalds4-71/+43
2005-04-07Clean up and factor out offset add from member dereference.Linus Torvalds1-11/+21
2005-04-07Whee.. Arrays of arrays were type-parsed quite wrong. MaybeLinus Torvalds1-0/+1
2005-04-07Create helper function to verify lvalue'ness.Linus Torvalds1-21/+64
2005-04-07Evaluate conditional expressions with the gcc extensionLinus Torvalds1-21/+30
2005-04-07Simplify bitops, shifts, and equality checks.Linus Torvalds1-6/+20
2005-04-07To make the output more readable, drop the type informationLinus Torvalds1-1/+1
2005-04-07Handle the case of a degenerate array correctly: we shouldLinus Torvalds1-2/+15
2005-04-07Simplify more integer constant expressions. Get signLinus Torvalds1-9/+55
2005-04-07Simplify some constant integer operations. Better toLinus Torvalds1-2/+27
2005-04-07Remove extra '<..>' in pretty-printing of expressions.Linus Torvalds1-2/+1
2005-04-07Fix member dereferences to match the new world order.Linus Torvalds1-0/+7
2005-04-07Don't bother showing the full type of a symbol in an expression,Linus Torvalds1-1/+1
2005-04-07Oops. Dropped symbol modifiers in the symbol evaluationLinus Torvalds1-2/+3
2005-04-07Verify lvalue'ness on assignment - since we now make symbolLinus Torvalds1-14/+4
2005-04-07Update 'addressof' to work with the new symbol setup.Linus Torvalds1-15/+6
2005-04-07Evaluating a symbol turns into a dereference of the addressLinus Torvalds2-20/+15
2005-04-07Prepare to collapse '*&' and '&*' combinations.Linus Torvalds1-8/+56
2005-04-07Clean up expression dereference evaluation. Rename struct/unionLinus Torvalds1-24/+32
2005-04-07Clean up address-of evaluation, and mark symbols so evaluatedLinus Torvalds3-9/+26
2005-04-07Make the "obfuscate" backend actually generate a fewLinus Torvalds1-4/+44
2005-04-07Oops. Missed a place where we added pure symbol declarationsLinus Torvalds1-6/+1
2005-04-07Evaluate simple initializers (ie non-structured ones). They lookLinus Torvalds1-11/+23
2005-04-07Make initializer evaluation have the correct infrastructure.Linus Torvalds1-29/+38
2005-04-07Oops. The preprocessor symbol evaluation printed out the wrong name.Linus Torvalds4-2/+87
2005-04-07Prinout of the "inline", "nocast" and "noderef" attributesLinus Torvalds1-1/+2
2005-04-07Only add symbol definitions, not declarations, to the result listLinus Torvalds3-20/+34
2005-04-07evaluate_initializer() is now static to within evaluate.cLinus Torvalds1-1/+0
2005-04-07Evaluate more SYM_NODE type fallout - we can have pointers toLinus Torvalds1-11/+26
2005-04-07Check address spaces when comparing types. They should match:Linus Torvalds2-10/+21
2005-04-07Make structure size calculations handle the case whereLinus Torvalds1-3/+3
2005-04-07Show type names more readablyLinus Torvalds1-3/+3
2005-04-07Make "final type attributes" properly apply the attributeLinus Torvalds1-37/+46
2005-04-07Fix fallout from the change to have the full symbol typeLinus Torvalds1-47/+75
2005-04-07Rename the symbol 'type' attribute as a 'context' attribute.Linus Torvalds3-45/+34
2005-04-07Add a note in the FAQ about the lack of support for old K&R-styleLinus Torvalds1-0/+18
2005-04-07Don't drop SYM_NODE information when evaluating expression types.Linus Torvalds1-10/+65
2005-04-07Add parsing of "noderef" attribute, and remember to save theLinus Torvalds2-0/+12
2005-04-07Expose scoping to symbol binders - we'll need this to checkLinus Torvalds3-10/+27
2005-04-07Add some limited attribute parsing. "packed", "aligned" and "type".Linus Torvalds5-2/+48
2005-04-07Get closer to actually looking at type attributes.Linus Torvalds1-13/+21
2005-04-07Move symbol alignment into the "ctype" part of the symbol,Linus Torvalds4-30/+31
2005-04-07Prepare attribute parsing for future work.Linus Torvalds1-3/+5
2005-04-07Oops. Move type definition to top of function, instead ofLinus Torvalds1-1/+1
2005-04-07Change the copyright to Transmeta Corp, that's likely to beLinus Torvalds17-17/+17
2005-04-07Put a note in the README about the lazy type evaluation.Linus Torvalds1-5/+16
2005-04-07Make conditional expressions handle compatible pointers.Linus Torvalds1-7/+58
2005-04-07Make sure unhandled types show up in type expansions.Linus Torvalds1-0/+5
2005-04-07If 'examine_symbol_type' changes the symbol type due to lazyLinus Torvalds2-2/+5
2005-04-07Change the evaluate functions to return the type of the resultLinus Torvalds4-144/+141
2005-04-07Evaluate more expression types: conditional expressions, statementLinus Torvalds3-80/+154
2005-04-07Save enough information at parse time to make "typeof" workLinus Torvalds2-4/+5
2005-04-07Drop debugging message.Linus Torvalds1-1/+0
2005-04-07Oops. Initializer casts didn't actually save the result.Linus Torvalds1-1/+1
2005-04-07Show symbol types in a more C-like fashion, to avoid confusion.Linus Torvalds1-43/+88
2005-04-07Fix modifiers for pointer types. Bug hidden by not veryLinus Torvalds1-2/+2
2005-04-07Do a better job of type checking at assignment time.Linus Torvalds1-2/+26
2005-04-07Make the parser discard the tokens after having parsedLinus Torvalds2-9/+17
2005-04-07Update comment about NS_LABEL scoping behaviour, nowLinus Torvalds1-3/+3
2005-04-07Separate scopes for blocks and functions. Function scopesLinus Torvalds4-11/+41
2005-04-07Make labels be symbols in their own namespace (NS_LABEL).Linus Torvalds4-10/+26
2005-04-07Remove last user of "struct token" from "struct expression".Linus Torvalds6-130/+124
2005-04-07Parse array initializer index specifiers:Linus Torvalds1-0/+24
2005-04-07Evaluate assignments:Linus Torvalds3-13/+103
2005-04-07Evaluate initializers separately. We'll need this to handleLinus Torvalds3-1/+17
2005-04-07Make structure/union declaration printout prettier.Linus Torvalds1-2/+0
2005-04-07Parse initializers properly. We parsed them before, but we didn'tLinus Torvalds7-32/+82
2005-04-07Start doing constant strings right: do proper concatenation of strings,Linus Torvalds6-23/+91
2005-04-07A structure member is just an identifier, not a random token.Linus Torvalds4-6/+6
2005-04-07Introduce a "struct position", and have the different types referLinus Torvalds13-265/+273
2005-04-07Don't die on excessive warnings, just print a warning and stopLinus Torvalds1-2/+9
2005-04-07Make arrays properly degenerate into pointer expressions whenLinus Torvalds1-3/+15
2005-04-07Add support for tokenizing a pre-allocated string instead of a file.Linus Torvalds3-36/+113
2005-04-07Fix up the 'value is so large it is XXXX' message in the presenseLinus Torvalds1-7/+7
2005-04-07Zero out the high bits when casting constants to a smaller type,Linus Torvalds2-4/+9
2005-04-07Fix up integer constants to match magic rule: a normal decimalLinus Torvalds1-7/+21
2005-04-07Take note of modifiers at the end of integer constants,Linus Torvalds1-7/+96
2005-04-07Mark the ctype "int" explicitly signed (and not just signedLinus Torvalds1-1/+1
2005-04-07Rename "promot()" to "cast_to()", since we sometimes use itLinus Torvalds1-3/+8
2005-04-07Fix array size problem: if the array is unsized (-1), thenLinus Torvalds2-1/+3
2005-04-07Ahh.. Functions can also degenerate into pointer types,Linus Torvalds1-1/+1
2005-04-07Show more statement types.Linus Torvalds1-2/+23
2005-04-07Evaluate pointer subtractions correctly: handle the validLinus Torvalds3-25/+35
2005-04-07Evaluate (ptr - ptr). Do the sizeof scaling for (ptr + int)Linus Torvalds2-2/+89
2005-04-07Evaluate a lot more binop types: pointer addition,Linus Torvalds1-26/+105
2005-04-07Handle 'enum' as 'int' for integer promotion.Linus Torvalds2-3/+21
2005-04-07Use the same bitfield packing that gcc does. It was muchLinus Torvalds1-45/+46
2005-04-07Evaluate bitfields into bitfield expressions.Linus Torvalds3-13/+36
2005-04-07Add bitfield type examination and printout.Linus Torvalds2-5/+62
2005-04-07Fix postop and cast evaluators, that returned success when theyLinus Torvalds2-4/+12
2005-04-07Give comma expressions and comparison expressions different types,Linus Torvalds4-19/+78
2005-04-07Make a function call point an expression type of its own, andLinus Torvalds8-8/+158
2005-04-07Print out array sizes correctly.Linus Torvalds1-5/+1
2005-04-07Evaluate structure and union member dereferences (turn them into plain derefe...Linus Torvalds1-0/+81
2005-04-07Fix structure debug printouts after the type changeover.Linus Torvalds1-2/+2
2005-04-07Add a generic internal pointer type (void *)Linus Torvalds2-2/+4
2005-04-07Add tree evaluation to a few more statement types (iterators,Linus Torvalds4-9/+28
2005-04-07Fix indirect type parsing (functions, arrays, bitfields). UpdateLinus Torvalds7-71/+104
2005-04-07Make the 'void' type also be part of the new world orderLinus Torvalds2-10/+3
2005-04-07Make 'show_type()' just show the type, while 'show_symbol()'Linus Torvalds1-5/+21
2005-04-07Fix typename parsing (incorrect ctype usage), and correctLinus Torvalds4-26/+30
2005-04-07Oops. When adding the basic C types, I forgot the mostLinus Torvalds1-1/+3
2005-04-07Clean up type handling in a big way. Don't leave thoseLinus Torvalds7-110/+168
2005-04-07Evaluate pre-op expression types.Linus Torvalds1-1/+30
2005-04-07Start doing type evaluation for binops - integer promotion rulesLinus Torvalds6-36/+128
2005-04-07Prepare for proper integer types on constants.Linus Torvalds1-20/+10
2005-04-07Handle __LINE__ and __FILE__ in pre-processor.Linus Torvalds1-0/+24
2005-04-07Make the includepath be an array of "const char *"Linus Torvalds2-4/+2
2005-04-07Add building of the normal built-in C types (as opposed to theLinus Torvalds3-4/+53
2005-04-07Add preprocessor directives to manipulate the include path.Linus Torvalds3-28/+51
2005-04-07Handle undefined identifiers "gracefully", and improve printoutLinus Torvalds2-8/+10
2005-04-07Evaluate character constants.Linus Torvalds1-0/+6
2005-04-07Start "evaluating" expression trees. That is, evaluate the types ofLinus Torvalds4-2/+120
2005-04-07Fix the union size calculation thing that I broke earlier. TheLinus Torvalds1-1/+10
2005-04-07Handle 'enum' type sizing and alignmentLinus Torvalds2-0/+12
2005-04-07Replace for/while/do-while loops with a generic internalLinus Torvalds3-41/+103
2005-04-07Handle 'void' type sizing and bad sizeof's.Linus Torvalds2-2/+15
2005-04-07Start doing "sizeof" evaluation.Linus Torvalds1-0/+7
2005-04-07Make array parsing use the proper constant evaluationLinus Torvalds2-55/+45
2005-04-07Split the compile time constant evaluation up intoLinus Torvalds3-92/+112
2005-04-07Add debug output to show union/struct member sizes, alignmentsLinus Torvalds1-1/+1
2005-04-07Add type size and alignment information to 'struct symbol'.Linus Torvalds5-4/+174
2005-04-07Move expression data structures to "expression.h", they gotLinus Torvalds4-41/+43
2005-04-07Uhuh. Fix stupid thinko in insertion of macro expansion.Linus Torvalds1-4/+3
2005-04-07Remove unused variableLinus Torvalds1-1/+0
2005-04-07Don't expand arguments that are preceded by '#' or preceded or followedLinus Torvalds1-3/+6
2005-04-07Fix stringify that got broken by other changesLinus Torvalds1-1/+0
2005-04-07Teach ## expansion about the magic gcc behaviour: x ## arg goesLinus Torvalds1-0/+24