Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Refactor parser. | chriseth | 2018-04-26 | 2 | -66/+73 |
| | |||||
* | docstring: add missing space | Leo Arias | 2018-04-24 | 1 | -1/+1 |
| | |||||
* | Fix internal compiler error when parsing ``var`` declaration without identifier. | Daniel Kirchner | 2018-04-12 | 1 | -2/+4 |
| | |||||
* | Properly cope with constructor headers. | chriseth | 2018-04-12 | 1 | -3/+6 |
| | |||||
* | Warn if modifiers are applied to functions without implementation. | chriseth | 2018-04-12 | 1 | -4/+4 |
| | |||||
* | Fix state variable parsing. | chriseth | 2018-04-12 | 1 | -0/+8 |
| | |||||
* | Error when using no parentheses in modifier-style constructor calls. | Daniel Kirchner | 2018-04-10 | 1 | -3/+3 |
| | |||||
* | Allow ``memory`` suffix for internal elementary type parsing. | chriseth | 2018-04-05 | 1 | -1/+1 |
| | |||||
* | Error when using empty parenthesis for base class constructors that require ↵ | Daniel Kirchner | 2018-04-05 | 1 | -3/+3 |
| | | | | arguments. | ||||
* | Set isConstructor to false unconditionally and update to true later for ↵ | Daniel Kirchner | 2018-04-04 | 1 | -6/+4 |
| | | | | constructors. | ||||
* | Set header.isConstructor for old style constructors in parseFunctionHeader ↵ | Daniel Kirchner | 2018-04-04 | 2 | -6/+16 |
| | | | | as well. | ||||
* | Constructors are defined using the ``constructor`` keyword. | Daniel Kirchner | 2018-04-04 | 2 | -6/+21 |
| | |||||
* | DocStringParser: Fix error message for empty parameter description. | Daniel Kirchner | 2018-03-14 | 1 | -7/+3 |
| | |||||
* | Introduce emit statement. | chriseth | 2018-02-22 | 2 | -1/+36 |
| | |||||
* | Expect end of string at end of top-level block for assembly parser. | chriseth | 2018-02-21 | 1 | -1/+1 |
| | |||||
* | Fix event parsing. Refs #3175 | Federico Bond | 2017-11-23 | 1 | -9/+5 |
| | |||||
* | Fix source location of VariableDeclarationStatement. | chriseth | 2017-09-28 | 1 | -0/+1 |
| | |||||
* | Better error message for unexpected trailing comma in parameter lists | wadeAlexC | 2017-09-25 | 1 | -0/+2 |
| | |||||
* | Limit parser recursion depth further (needed by increased assembly data ↵ | Alex Beregszaszi | 2017-09-20 | 1 | -1/+1 |
| | | | | structure size) | ||||
* | Crash fix, parseTypeName can return null. | chriseth | 2017-08-28 | 1 | -1/+4 |
| | |||||
* | Move the break in switch for readability | Alex Beregszaszi | 2017-08-25 | 1 | -3/+3 |
| | |||||
* | Remove two other fall-through cases in Parser | Alex Beregszaszi | 2017-08-25 | 2 | -3/+5 |
| | |||||
* | Remove fallthrough from literal parsing | Alex Beregszaszi | 2017-08-25 | 1 | -6/+9 |
| | |||||
* | Introduce pure specifier on functions | Alex Beregszaszi | 2017-08-24 | 2 | -2/+4 |
| | |||||
* | Merge pull request #2770 from ethereum/recursionInAsm | chriseth | 2017-08-24 | 4 | -39/+33 |
|\ | | | | | Also prevent too much recursion in the assembly parser. | ||||
| * | Reduce max recursion depth. | chriseth | 2017-08-22 | 1 | -1/+1 |
| | | |||||
| * | Check recursion depth in assembly parser. | chriseth | 2017-08-22 | 4 | -39/+33 |
| | | |||||
* | | Introduce view (and keep constant as an alias) | Alex Beregszaszi | 2017-08-23 | 2 | -3/+4 |
|/ | |||||
* | Mark appropriate constructors explicit | Alex Beregszaszi | 2017-08-22 | 3 | -4/+4 |
| | |||||
* | Mark a lot of functions const (where possible) | Alex Beregszaszi | 2017-08-22 | 1 | -5/+5 |
| | |||||
* | Prevent too deep recursion in parser. | chriseth | 2017-08-15 | 2 | -0/+82 |
| | |||||
* | Replace constant/payable with StateMutability in AST | Alex Beregszaszi | 2017-08-14 | 3 | -26/+34 |
| | |||||
* | Enforce commas in tuple syntax | Federico Bond | 2017-08-12 | 1 | -2/+3 |
| | |||||
* | Make toString(visibility) a helper | Alex Beregszaszi | 2017-08-09 | 1 | -20/+2 |
| | |||||
* | Show previous visibility specifier in parser error | Alex Beregszaszi | 2017-08-09 | 2 | -2/+29 |
| | |||||
* | Add test for multiple visibilites on functions | Alex Beregszaszi | 2017-08-09 | 1 | -1/+1 |
| | |||||
* | Rename Token::Const to Token::Constant | Alex Beregszaszi | 2017-08-09 | 2 | -3/+3 |
| | |||||
* | Cleanup fixed point type changes | chriseth | 2017-07-20 | 1 | -1/+1 |
| | |||||
* | Change fixed point types to have digit count | VoR0220 | 2017-07-20 | 1 | -7/+3 |
| | | | | Signed-off-by: VoR0220 <rj@erisindustries.com> | ||||
* | Update parser error for pragma/import/contract | Alex Beregszaszi | 2017-07-19 | 1 | -1/+1 |
| | |||||
* | Move UndefMacros from libdevcore to libsolidity/parsing | Alex Beregszaszi | 2017-07-02 | 2 | -1/+47 |
| | |||||
* | Avoid including Scanner.h in ParserBase.h | Alex Beregszaszi | 2017-06-23 | 2 | -5/+24 |
| | |||||
* | Merge interface/Exceptions and interface/Utils | Alex Beregszaszi | 2017-06-22 | 3 | -3/+2 |
| | |||||
* | Merge pull request #2409 from federicobond/trailing-commas-2 | chriseth | 2017-06-19 | 1 | -3/+9 |
|\ | | | | | Improve error reporting of trailing commas | ||||
| * | Improve error reporting of trailing commas | Federico Bond | 2017-06-16 | 1 | -3/+9 |
| | | |||||
* | | Display error if payable or constant is specified multiple times | Federico Bond | 2017-06-17 | 1 | -0/+6 |
| | | |||||
* | | Try to recover from parser errors where possible | Federico Bond | 2017-06-16 | 1 | -13/+22 |
|/ | |||||
* | Forbid trailing commas in named arguments | Federico Bond | 2017-06-14 | 1 | -4/+9 |
| | |||||
* | Refactor error reporting | Rhett Aultman | 2017-05-30 | 6 | -23/+18 |
| | | | | | | | | | This commit introduces ErrorReporter, a utility class which consolidates all of the error logging functionality into a common set of functions. It also replaces all direct interactions with an ErrorList with calls to an ErrorReporter. This commit resolves issue #2209 | ||||
* | Pull out common code to a helper | Alex Beregszaszi | 2017-05-27 | 2 | -24/+15 |
| | |||||
* | Remove duplicate code | Alex Beregszaszi | 2017-05-27 | 1 | -20/+18 |
| | |||||
* | Add scanner helpers to ParserBase | Alex Beregszaszi | 2017-05-27 | 1 | -1/+5 |
| | |||||
* | Move Solidity specific methods from ParserBase to the Solidity Parser | Alex Beregszaszi | 2017-05-27 | 4 | -60/+60 |
| | |||||
* | Rename InterfaceHandler to Natspec | Alex Beregszaszi | 2017-05-19 | 1 | -1/+0 |
| | |||||
* | Factor out tokenToContractKind | Alex Beregszaszi | 2017-03-18 | 2 | -15/+18 |
| | |||||
* | Support interface (contract) keyword in the parser | Alex Beregszaszi | 2017-03-18 | 3 | -6/+22 |
| | |||||
* | Add ContractKind to ContractDefinition | Alex Beregszaszi | 2017-03-18 | 1 | -1/+1 |
| | |||||
* | Disallow octal literals. | chriseth | 2017-03-07 | 1 | -0/+3 |
| | |||||
* | Minor changes. | chriseth | 2017-01-27 | 1 | -19/+17 |
| | |||||
* | More verbose function naming | Lefteris Karapetsas | 2017-01-27 | 1 | -2/+2 |
| | |||||
* | Doc tags followed by newline are now parsed properly | Lefteris Karapetsas | 2017-01-27 | 1 | -1/+1 |
| | |||||
* | Fix and better output for tests | Lefteris Karapetsas | 2017-01-25 | 1 | -0/+6 |
| | |||||
* | Accept any kind of whitespace after natspec tags | Lefteris Karapetsas | 2017-01-25 | 1 | -13/+47 |
| | |||||
* | Rename contractName to typeName when parsing new expression | Federico Bond | 2017-01-05 | 1 | -3/+3 |
| | |||||
* | parsing: `default` and `null` are reserved keywords | Yoichi Hirai | 2016-12-02 | 1 | -2/+2 |
| | |||||
* | Metadata stamp. | chriseth | 2016-12-01 | 1 | -0/+4 |
| | |||||
* | parser: recognize an end of comment of the form `**/` at the end of a ↵ | Yoichi Hirai | 2016-12-01 | 1 | -1/+6 |
| | | | | | | multi-line doc comment This fixes #1433 | ||||
* | Fix licensing headers | VoR0220 | 2016-11-23 | 9 | -36/+36 |
| | | | | Signed-off-by: VoR0220 <rj@erisindustries.com> | ||||
* | Fix parser for function type disambiguity. | chriseth | 2016-11-16 | 1 | -1/+12 |
| | |||||
* | Function type state variables. | chriseth | 2016-11-16 | 2 | -31/+68 |
| | |||||
* | Function types. | chriseth | 2016-11-16 | 2 | -33/+64 |
| | |||||
* | parsing: ban empty enum definition. | Yoichi Hirai | 2016-11-12 | 1 | -0/+2 |
| | |||||
* | Add support for do/while loops | Rhett Aultman | 2016-11-10 | 2 | -1/+19 |
| | | | | | | | This commit adds support for a standard do <statement> while <expr>; form of statement. While loops were already being supported; supporting a do/while loop mostly involves reusing code from while loops but putting the conditional checking last. | ||||
* | Merge pull request #1016 from ethereum/reserved | chriseth | 2016-09-06 | 2 | -1/+12 |
|\ | | | | | Report the usage of reserved keywords more nicely | ||||
| * | Raise proper error on reserved keywords | Alex Beregszaszi | 2016-09-06 | 1 | -1/+11 |
| | | |||||
| * | Introduce isReservedKeyword() | Alex Beregszaszi | 2016-09-06 | 1 | -0/+1 |
| | | |||||
* | | Reserve view and pure as keywords | Alex Beregszaszi | 2016-09-06 | 1 | -0/+2 |
|/ | |||||
* | Merged in changes from chriseth/payable | Alex Beregszaszi | 2016-09-06 | 1 | -6/+6 |
| | |||||
* | Support payable keyword for functions | Alex Beregszaszi | 2016-09-06 | 2 | -1/+8 |
| | |||||
* | Require ";" after "_" | chriseth | 2016-09-05 | 1 | -1/+1 |
| | |||||
* | Version pragma. | chriseth | 2016-09-01 | 3 | -0/+35 |
| | |||||
* | Introduce hex literals (#832) | Alex Beregszaszi | 2016-08-16 | 3 | -0/+37 |
| | | | | | | | | | | * Introduce hex keyword token * Support hex literals * Include tests for hex literals * Document hex literals | ||||
* | Reserved keywords update (#833) | Alex Beregszaszi | 2016-08-16 | 1 | -2/+6 |
| | | | | | | | | * Reserve abstract, interface and payable keywords * Keywords as and using aren't reserved anymore - they're used * Reserve the static keyword | ||||
* | Revert "Change After to a deprecated token" | Denton Liu | 2016-08-11 | 1 | -5/+1 |
| | | | | This reverts commit 91c97f73b50fc87662b5490b2fe6de1c6ef376c7. | ||||
* | Change After to a deprecated token | Denton Liu | 2016-08-11 | 1 | -1/+5 |
| | |||||
* | Remove after from Token.h | Denton Liu | 2016-08-11 | 1 | -2/+2 |
| | |||||
* | Rename addUnicodeChar to addUnicodeAsUTF8 | Alex Beregszaszi | 2016-08-05 | 2 | -3/+3 |
| | |||||
* | Support Unicode escape characters in string literals ('\uUUUU') | Alex Beregszaszi | 2016-08-05 | 2 | -0/+45 |
| | | | | Fixes #638 | ||||
* | Fix isCompareOp() | Denton Liu | 2016-07-21 | 1 | -1/+1 |
| | |||||
* | Move `in` as a keyword to reserved word section | Denton Liu | 2016-07-21 | 1 | -1/+1 |
| | |||||
* | Fix Token::isBitOp to exclude shift operators | Alex Beregszaszi | 2016-06-08 | 1 | -1/+1 |
| | |||||
* | updated algorithm for bit finding...now to figure out literal value | VoR0220 | 2016-05-10 | 1 | -1/+1 |
| | | | | | | | | | | | | tiny fixups changed location of the check got rid of extra space and fixed a couple of things added binary results bits change back literal value | ||||
* | got exponents up and working with their inverse, changed a few of the ↵ | RJ Catalano | 2016-05-10 | 1 | -2/+2 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | tests....something is working that likely shouldn't be slight changes to how to flip the rational negative around...still trying to figure it out tests added updated tests odd differences in trying soltest from solc binary, let me know if you can replicate test not working for odd reason fixed test problem with fixed literals...still need a way to log this error broken up the tests, added some, changed some things in types and began compiler work moar tests and prepping for rebuilding much of the types.cpp file further fixing infinite loop still happening but it's somewhere in the fixedPoint methodd fractional bits needed algo improved! Eliminated 2 errors Corrected problems with the previous commit. No infinite loops. Actually appear to have corrected an error | ||||
* | fixed problem with var...probably a conversion problem for fixed in size ↵ | RJ Catalano | 2016-05-10 | 1 | -2/+2 |
| | | | | | | | | capabilities adding fixed type tests Removing bitshift and regrouping fixed type tests together | ||||
* | fix for token bug, also quick fix for the wei and seconds | RJ Catalano | 2016-05-10 | 1 | -1/+1 |
| | |||||
* | initial work for fixed types...potentially needing a constant literal type ↵ | RJ Catalano | 2016-05-10 | 1 | -0/+3 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | for this notation Rational implemented...trying to figure out exponential fix for token bug, also quick fix for the wei and seconds fixed problem with var...probably a conversion problem for fixed in size capabilities adding fixed type tests Removing bitshift and regrouping fixed type tests together size capabilities functioning properly for fixed types got exponents up and working with their inverse, changed a few of the tests....something is working that likely shouldn't be slight changes to how to flip the rational negative around...still trying to figure it out tests added updated tests odd differences in trying soltest from solc binary, let me know if you can replicate test not working for odd reason fixed test problem with fixed literals...still need a way to log this error broken up the tests, added some, changed some things in types and began compiler work moar tests and prepping for rebuilding much of the types.cpp file further fixing initial work for fixed types...potentially needing a constant literal type for this | ||||
* | Remove log.h from solidity. | chriseth | 2016-04-12 | 3 | -3/+0 |
| | |||||
* | readding conditionals but with slight changes | VoR0220 | 2016-04-01 | 1 | -3/+2 |
| | |||||
* | solAsserts added and some changes rolled back. | VoR0220 | 2016-03-31 | 2 | -2/+3 |
| | |||||
* | helper function in scanner and corresponding edits to parserBase | VoR0220 | 2016-03-31 | 3 | -12/+13 |
| | |||||
* | Got it working exactly like you wanted ;) | VoR0220 | 2016-03-31 | 2 | -25/+76 |
| | |||||
* | change lexical cast to unsigned int | VoR0220 | 2016-03-31 | 1 | -1/+1 |
| | |||||
* | Fix for Token::name and token::toString | VoR0220 | 2016-03-31 | 1 | -4/+3 |
| | |||||
* | Code generation (missing external access and source locations). | chriseth | 2016-03-30 | 1 | -8/+9 |
| | |||||
* | Parsing for inline assembly. | chriseth | 2016-03-30 | 2 | -0/+21 |
| | |||||
* | Remove timestamp again and some fixes for ufixed parsing. | chriseth | 2016-03-12 | 2 | -15/+18 |
| | |||||
* | added keyword type and some tests, changes in lexical cast | RJ Catalano | 2016-03-12 | 2 | -11/+12 |
| | |||||
* | stylistic change, and got lexical cast to work with an iterator range | RJ Catalano | 2016-03-12 | 2 | -5/+6 |
| | |||||
* | - inline and assembly keywords added | LianaHus | 2016-03-12 | 3 | -8/+10 |
| | | | | - some style fixes | ||||
* | changed documentation and using lexical cast | RJ Catalano | 2016-03-12 | 2 | -11/+3 |
| | |||||
* | changed extractUnsigned to handle iterators rather than a string | RJ Catalano | 2016-03-12 | 2 | -5/+5 |
| | |||||
* | changed 1 to 0 in invalid argument catch block | RJ Catalano | 2016-03-12 | 2 | -2/+2 |
| | |||||
* | needed this one string of notation | RJ Catalano | 2016-03-12 | 1 | -0/+1 |
| | |||||
* | added from identifier or keyword handling of fixed types | RJ Catalano | 2016-03-12 | 2 | -6/+37 |
| | |||||
* | fixed keyword added in for token type | RJ Catalano | 2016-03-12 | 1 | -2/+4 |
| | |||||
* | Buildfix. | chriseth | 2016-02-23 | 1 | -3/+1 |
| | |||||
* | Move reusable parser components into base class. | chriseth | 2016-02-23 | 4 | -100/+183 |
| | |||||
* | further optimization, splitting function into pieces | RJ Catalano | 2016-02-19 | 2 | -14/+18 |
| | | | | generating strings on the fly, changed name, and added two tests | ||||
* | added const correctness to extract functions in Token | RJ Catalano | 2016-02-19 | 3 | -107/+44 |
| | | | | | | | | | | optimizations added in more elegant solution created for m declaration ubuntu wants to get rid of 0 <= first statement...so I will change returnToken to token | ||||
* | added two functions in Token to handle long identifiers, redid ↵ | RJ Catalano | 2016-02-19 | 5 | -55/+138 |
| | | | | fromIdentifierOrKeyword, and made complementary changes in scanner and parser | ||||
* | tests added and changes made | RJ Catalano | 2016-02-19 | 4 | -67/+79 |
| | | | | | | fixed some silly problems in Token.cpp windows error fix | ||||
* | changes to redefine the token list, the scanner, and the parser and how they ↵ | RJ Catalano | 2016-02-19 | 5 | -125/+114 |
| | | | | | | | | pass around variable types of different sizes not ready for change to FixedPoint just yet made this more const correct and added a switch statement for easier reading | ||||
* | Fix uint178 problem. | chriseth | 2016-01-26 | 1 | -2/+2 |
| | |||||
* | [cond-expr] fixup according to code review | Lu Guanqun | 2016-01-23 | 1 | -1/+1 |
| | |||||
* | [cond-expr] parse _ ? _ : _ into conditional AST node | Lu Guanqun | 2016-01-23 | 1 | -6/+19 |
| | |||||
* | Remove unnecesary std::move | Paweł Bylica | 2016-01-15 | 1 | -1/+1 |
| | |||||
* | Use paths instead of simple identifiers wherever possible. | chriseth | 2015-12-22 | 2 | -15/+18 |
| | |||||
* | Merge pull request #311 from guanqun/correct-boolean-literal-position | chriseth | 2015-12-19 | 1 | -0/+1 |
|\ | | | | | correct true/false literal's source | ||||
| * | correct true/false literal's source | Lu Guanqun | 2015-12-18 | 1 | -0/+1 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before: Literal, token: true value: true Type: bool Source: "true;" After: Literal, token: true value: true Type: bool Source: "true" Extra token is removed. | ||||
* | | Simple aliasing during import. | chriseth | 2015-12-18 | 1 | -1/+1 |
| | | |||||
* | | Parse complex import directives. | chriseth | 2015-12-18 | 1 | -19/+68 |
| | | |||||
* | | changed error message | RJ Catalano | 2015-12-17 | 1 | -1/+1 |
| | | |||||
* | | updated tests and much simpler algorithm for parsing errors | RJ Catalano | 2015-12-17 | 1 | -7/+6 |
| | | |||||
* | | added one more test and realized that there was one last change before the ↵ | RJ Catalano | 2015-12-17 | 1 | -1/+1 |
| | | | | | | | | parser is perfect | ||||
* | | Parsing is complete | RJ Catalano | 2015-12-17 | 1 | -3/+3 |
| | | |||||
* | | changed a couple of small nuances, made an attempt at fixing the parsing in ↵ | RJ Catalano | 2015-12-17 | 1 | -3/+6 |
| | | | | | | | | the inline arrays case (fails), and added test for inline arrays per Chriseth request | ||||
* | | now is compiling and passing soltest...but I think there may be a few more ↵ | RJ Catalano | 2015-12-16 | 1 | -4/+6 |
| | | | | | | | | things to do | ||||
* | | fixed case statements | RJ Catalano | 2015-12-16 | 1 | -1/+2 |
| | | |||||
* | | updated attempt...still a bit more work to do but here's what's current | RJ Catalano | 2015-12-16 | 1 | -0/+1 |
|\ \ | |||||
| * | | Inline array declarations complete | RJ Catalano | 2015-12-15 | 1 | -0/+22 |
| |/ | |||||
* / | updated attempt, a couple of more things to sort through and change | RJ Catalano | 2015-12-16 | 1 | -4/+6 |
|/ | |||||
* | Added the `using x for y` directive. | chriseth | 2015-11-27 | 2 | -0/+21 |
| | |||||
* | Do not store elements of a contract by AST node type. | chriseth | 2015-11-26 | 1 | -18/+8 |
| | |||||
* | Fix MSVC errors and warnings. | chriseth | 2015-11-26 | 1 | -1/+1 |
| | |||||
* | Allow "new expressions" also for general type names. | chriseth | 2015-11-26 | 1 | -1/+1 |
| | | | | | | | Breaking change: If you want to send value with a contract creation, you have to use parentheses now: `(new ContractName).value(2 ether)(arg1, arg2)` | ||||
* | Allow docstrings for statements. | chriseth | 2015-10-27 | 2 | -35/+45 |
| | |||||
* | Store docstrings in AST annotations. | chriseth | 2015-10-26 | 2 | -0/+211 |
| | |||||
* | more corrections | LianaHus | 2015-10-23 | 1 | -4/+14 |
| | |||||
* | modified error msg | LianaHus | 2015-10-23 | 1 | -1/+7 |
| | |||||
* | File reorganisation. | chriseth | 2015-10-21 | 6 | -0/+2900 |