aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity
Commit message (Expand)AuthorAgeFilesLines
* Merge pull request #1245 from ethereum/1215chriseth2017-01-242-7/+19
|\
| * analysis: disallow overloading functions with eventsYoichi Hirai2017-01-231-1/+6
| * analysis: fix formatYoichi Hirai2017-01-231-4/+7
| * analysis: Resolve event overloadingYoichi Hirai2017-01-232-14/+11
| * analysis: Allow multiple events of the same nameYoichi Hirai2017-01-231-0/+7
* | Merge pull request #1591 from ethereum/stackTooDeepLocationYoichi Hirai2017-01-232-2/+14
|\ \
| * | Report source location on "stack too deep" errors.chriseth2017-01-212-2/+14
| |/
* / Check if constructor is public or not.chriseth2017-01-213-2/+13
|/
* Merge pull request #1576 from ethereum/typeIdentifiersYoichi Hirai2017-01-205-20/+291
|\
| * Make m_id const.chriseth2017-01-201-1/+1
| * Reset AST node IDs between compilation runs.chriseth2017-01-204-5/+27
| * Properly escape user strings and lists.chriseth2017-01-192-44/+86
| * Type identifiers.chriseth2017-01-192-3/+210
* | Fix default function type name visibility.chriseth2017-01-192-2/+4
|/
* Fix typo in commentFederico Bond2017-01-181-1/+1
* Merge pull request #1581 from ethereum/fixosxchriseth2017-01-181-2/+2
|\
| * Fix JSON output on macos.chriseth2017-01-181-2/+2
* | Merge pull request #1397 from roadriverrail/contract_collisionchriseth2017-01-186-46/+65
|\ \ | |/ |/|
| * Provide fall-back method for contract lookupRhett Aultman2017-01-171-1/+18
| * Remove checkLibraryNameClashes()Rhett Aultman2017-01-172-37/+0
| * Use fully-qualified names for linking, tooRhett Aultman2017-01-172-3/+3
| * Remove unique error for contract collisionRhett Aultman2017-01-171-39/+10
| * Move fullyQualified() name to DeclarationRhett Aultman2017-01-172-10/+1
| * Stylistic correctionsRhett Aultman2017-01-172-9/+5
| * Push the error instead of throwing itRhett Aultman2017-01-171-10/+34
| * Drop ':' if the source file name is emptyRhett Aultman2017-01-171-1/+2
| * Only avoid collision if it's the same fileRhett Aultman2017-01-174-12/+48
| * Tab whitespace cleanup (again)Rhett Aultman2017-01-171-1/+2
| * Tidy up the error messageRhett Aultman2017-01-171-3/+3
| * Fix tab, drop stupid '!!!', change error message.Rhett Aultman2017-01-171-3/+3
| * Error out when contracts collide on nameRhett Aultman2017-01-171-0/+19
* | Include SOL_VERSION_COMMIT/SOL_VERSION_PLATFORM in buildinfo.hAlex Beregszaszi2017-01-171-1/+2
* | Store strict version number in metadata (exclude the platform)Alex Beregszaszi2017-01-173-1/+5
* | Deterministic AST node identifiers.chriseth2017-01-173-2/+8
|/
* Merge pull request #1479 from ethereum/function_variable_mixinchriseth2017-01-135-11/+157
|\
| * ast: events have FunctionType tooYoichi Hirai2017-01-122-8/+17
| * analysis: use Declaration::functionType() in another locationYoichi Hirai2017-01-121-11/+4
| * ast: add Declaration::functionType()Yoichi Hirai2017-01-123-14/+80
| * analysis: avoid emscripten build failureYoichi Hirai2017-01-121-3/+3
| * analysis: changes necessary to compile std/StandardToken.solYoichi Hirai2017-01-123-12/+58
| * analysis: allow some shadowings explicitlyYoichi Hirai2017-01-121-0/+8
| * analysis: report errors when inheritance causes collisionYoichi Hirai2017-01-121-1/+25
* | fixedVoR02202017-01-121-2/+2
* | added fix and a test for order independence of nested prefixingVoR02202017-01-121-2/+2
* | cleanupVoR02202017-01-122-14/+15
* | fixed unused filepath bugVoR02202017-01-111-2/+1
* | much smaller helper functionVoR02202017-01-102-5/+5
* | can do this purely on length. Also made prefix filesystem string for more acc...VoR02202017-01-091-27/+16
* | fixed test and added solutionVoR02202017-01-091-3/+26
|/
* Merge pull request #1537 from ethereum/absolute-pathchriseth2017-01-071-3/+3
|\
| * interface: change absolutePath() so that ".dir" is considered as an absolute ...Yoichi Hirai2017-01-041-3/+3
* | Merge pull request #1545 from federicobond/refactor-renamechriseth2017-01-051-3/+3
|\ \ | |/ |/|
| * Rename contractName to typeName when parsing new expressionFederico Bond2017-01-051-3/+3
* | ast, codegen: enable accessing events through contract names.Yoichi Hirai2017-01-032-9/+36
|/
* Merge pull request #1503 from federicobond/json-visibilityYoichi Hirai2016-12-152-7/+22
|\
| * Include visibility level for functions in ASTFederico Bond2016-12-132-7/+22
* | Merge pull request #1508 from ethereum/multiurlschriseth2016-12-151-2/+4
|\ \
| * | Use multiple URLs for metadata.chriseth2016-12-131-2/+4
* | | Merge pull request #1487 from ethereum/shift-opsYoichi Hirai2016-12-143-30/+130
|\ \ \
| * | | Use correct type for storing.chriseth2016-12-131-7/+7
| * | | Cleaner shift handling and type conversion for binary operations.chriseth2016-12-123-75/+100
| * | | Type after shift should be type of left operand.chriseth2016-12-121-5/+42
| * | | Support bitshifting in variablesAlex Beregszaszi2016-12-123-9/+47
| | |/ | |/|
* | | Merge pull request #1507 from ethereum/memcopystyleYoichi Hirai2016-12-142-14/+14
|\ \ \ | |_|/ |/| |
| * | Renamed padToWordBoundaries -> padToWordschriseth2016-12-132-14/+14
* | | Improve error message when trying to modify constant variablesFederico Bond2016-12-132-1/+8
|/ /
* | Merge pull request #1468 from ethereum/memcpy-assemblyYoichi Hirai2016-12-134-16/+82
|\ \
| * | Split memcopy into three functions.chriseth2016-12-123-54/+79
| * | Fix inline assembly.chriseth2016-12-121-1/+2
| * | Reset stack height after inline assembly blockAlex Beregszaszi2016-12-121-0/+1
| * | Better assert message for appendInlineAssembnlyAlex Beregszaszi2016-12-121-1/+1
| * | Implement identity call in inline assemblyAlex Beregszaszi2016-12-121-14/+21
| * | Turn off the identity precompile for testingAlex Beregszaszi2016-12-121-1/+1
| * | Implement CompilerUtils::memoryCopy using inline assemblyAlex Beregszaszi2016-12-121-1/+26
| * | Add usingIdentity option to CompilerUtils::memoryCopyAlex Beregszaszi2016-12-122-2/+9
| |/
* | Merge pull request #1491 from ameten/refactoringchriseth2016-12-131-1/+1
|\ \ | |/ |/|
| * - fixed a misprint.Danil Nemirovsky2016-12-091-1/+1
* | Merge pull request #1464 from federicobond/warn-msgvaluechriseth2016-12-114-0/+162
|\ \
| * | Warn about using msg.value in non-payable functionFederico Bond2016-12-094-0/+162
| |/
* / Fix names of JSON AST nodesFederico Bond2016-12-111-2/+2
|/
* Merge pull request #1351 from ethereum/truncate_bitchriseth2016-12-083-3/+5
|\
| * codegen: clean not only booleans but all types before storing them into memoryYoichi Hirai2016-12-012-4/+3
| * codegen: clean any data from the inputYoichi Hirai2016-12-011-2/+2
| * codegen: truncate booleans before they enter storageYoichi Hirai2016-12-011-1/+0
| * codegen: cleanup booleans before storing them into memoryYoichi Hirai2016-12-011-0/+2
| * codegen: truncate a boolean calldata down to one bitYoichi Hirai2016-12-011-0/+2
* | Merge pull request #1465 from ethereum/missing_keywordschriseth2016-12-061-2/+2
|\ \
| * | parsing: `default` and `null` are reserved keywordsYoichi Hirai2016-12-021-2/+2
* | | Throw if calling the identity precompile (memoryCopy) failedAlex Beregszaszi2016-12-021-1/+2
|/ /
* | Add the `_runs` parameter.chriseth2016-12-012-3/+3
* | Fix type of optimizeRunsAlex Beregszaszi2016-12-011-1/+1
* | Use CBOR encoding.chriseth2016-12-013-4/+11
* | Fix tests.chriseth2016-12-012-10/+0
* | Add swarm hash to the end of the bytecode.chriseth2016-12-015-12/+5
* | Make sure some keys are present.chriseth2016-12-011-0/+3
* | Incorporate comments.chriseth2016-12-011-10/+10
* | Metadata stamp.chriseth2016-12-019-31/+126
* | Merge pull request #1462 from ethereum/fix-incorrect-assertionchriseth2016-12-011-1/+1
|\ \
| * | codegen: assertion did not assert non-nullnessYoichi Hirai2016-12-011-1/+1
| |/
* | Merge pull request #1463 from ethereum/duplicate-assignmentchriseth2016-12-011-2/+0
|\ \
| * | codegen: this commit removes one of duplicate assignmentsYoichi Hirai2016-12-011-2/+0
| |/
* / parser: recognize an end of comment of the form `**/` at the end of a multi-l...Yoichi Hirai2016-12-011-1/+6
|/
* Include the grammar verbatim in the documentationAlex Beregszaszi2016-11-301-110/+0
* Rename dev::validate to dev::validateUTF8Alex Beregszaszi2016-11-292-3/+3
* Make position optional in dev::validateAlex Beregszaszi2016-11-292-4/+2
* Use solUnimplemented wherever possibleAlex Beregszaszi2016-11-282-3/+3
* Merge pull request #1395 from ethereum/grammarchriseth2016-11-251-1/+1
|\
| * Properly define the pragma directive in the grammarAlex Beregszaszi2016-11-181-1/+1
* | Merge pull request #1381 from ethereum/overflown_enum_comparedchriseth2016-11-253-8/+35
|\ \
| * | codegen: cleanup values to fit in storage bytesYoichi Hirai2016-11-251-0/+4
| * | codegen: storing of non-value types; add some assertionsYoichi Hirai2016-11-251-8/+5
| * | codegen: shorten the bit truncationYoichi Hirai2016-11-251-5/+2
| * | codegen: merge type conversion and cleaning upYoichi Hirai2016-11-251-3/+2
| * | codegen: document _chopSignBits parameter of convertType functionYoichi Hirai2016-11-251-0/+1
| * | codegen: add an option to CovertType so that it can truncate sign bitsYoichi Hirai2016-11-253-10/+22
| * | codegen: cleanup stored values in a more consistent wayYoichi Hirai2016-11-251-4/+16
| * | codegen: cleanup value types before storing themYoichi Hirai2016-11-241-0/+5
* | | Indentation.chriseth2016-11-251-1/+1
* | | ast: string literals that are not valid UTF are not convertible to stringsYoichi Hirai2016-11-252-1/+10
|/ /
* | Fix licensing headersVoR02202016-11-2377-308/+308
* | Add appendCallValueCheckAlex Beregszaszi2016-11-182-20/+14
* | Include payable for the constructor in the ABIAlex Beregszaszi2016-11-181-0/+1
* | Add payable check for constructor in codegenAlex Beregszaszi2016-11-181-0/+12
|/
* Some more assertions and style changes.chriseth2016-11-162-17/+26
* Change encoding to address-funid and add "function" as ABI type.chriseth2016-11-166-18/+29
* Fix parser for function type disambiguity.chriseth2016-11-161-1/+12
* Simple peephole optimizer that is activated even if not requested.chriseth2016-11-162-5/+3
* Check that no internals are used in any external function type.chriseth2016-11-165-1/+45
* Converted sub assembly to smart pointer.chriseth2016-11-165-48/+50
* Stored combined creation and runtime tags.chriseth2016-11-1610-62/+136
* ABI: Use external function.chriseth2016-11-161-2/+2
* Disallow payable internal functions.chriseth2016-11-162-2/+5
* Mention "payable" in the documentation.chriseth2016-11-161-2/+2
* Fix tests.chriseth2016-11-161-1/+11
* delete for function typeschriseth2016-11-162-0/+8
* codegen: add a compilation mode and a runtime context to CompilerContextYoichi Hirai2016-11-164-6/+23
* Added function types to the grammar.chriseth2016-11-161-1/+4
* Implement uninitialized storage functions.chriseth2016-11-162-11/+17
* Bugfix in code generator.chriseth2016-11-161-1/+1
* Change alignment.chriseth2016-11-164-31/+43
* Changelog entry and small fixes.chriseth2016-11-162-5/+8
* External functions in storage.chriseth2016-11-163-18/+49
* Fix some type checks and tests for internal / external function parameters.chriseth2016-11-161-3/+3
* Function type state variables.chriseth2016-11-162-31/+68
* Code generator for function types.chriseth2016-11-164-2/+46
* Function types.chriseth2016-11-1614-39/+241
* Move InterfaceHandler from string to JSONAlex Beregszaszi2016-11-156-39/+37
* Rename ErrorTag to invalidJumpLabel in inline assemblyAlex Beregszaszi2016-11-151-1/+1
* Support ErrorTag as a jump label in inline assemblyAlex Beregszaszi2016-11-151-1/+5
* Merge pull request #1375 from ethereum/inline-assembly-stack-heightchriseth2016-11-151-7/+9
|\
| * Fix inline assembly stack warnings when using variablesAlex Beregszaszi2016-11-151-7/+9
* | Do not include a trailing new line in the ABI JSON outputAlex Beregszaszi2016-11-151-1/+4
|/
* Unimplemented features moved to their own exception (#1361)Rhett Aultman2016-11-157-17/+24
* Merge pull request #1367 from asinyagin/developchriseth2016-11-151-2/+2
|\
| * Print canonical names of structs and enums in ASTAlex Sinyagin2016-11-141-2/+2
* | Merge pull request #1372 from ethereum/invalid_enum_as_external_retchriseth2016-11-151-2/+2
|\ \
| * | codegen: overflow checking also during conversion from enumsYoichi Hirai2016-11-151-2/+2
| |/
* / codegen: add a missing `break;`Yoichi Hirai2016-11-141-0/+1
|/
* Merge pull request #1365 from walter-weinmann/developchriseth2016-11-141-1/+1
|\
| * #1362: As it stands currently, the >>> operator will not be implemented.Walter Weinmann2016-11-141-1/+1
* | codegen: move the enum overflow checking closer to the conversion into enumsYoichi Hirai2016-11-141-8/+16
* | ast, codegen: disallow conversion between different enum typesYoichi Hirai2016-11-122-2/+2
* | codegen: shorten the overflow checking when converting into enumsYoichi Hirai2016-11-121-1/+2
* | parsing: ban empty enum definition.Yoichi Hirai2016-11-121-0/+2
* | codegen: check the value range after converting something to an enum elementYoichi Hirai2016-11-121-0/+8
* | ast: add EnumType::numberOfMembers()Yoichi Hirai2016-11-122-1/+7
|/
* Merge pull request #1355 from ethereum/chriseth-patch-2chriseth2016-11-121-3/+3
|\
| * Fix semicolonschriseth2016-11-111-3/+3
* | Type checker: move the burden of computing mobile type to commonTypeYoichi Hirai2016-11-112-6/+6
|/
* Add support for do/while loopsRhett Aultman2016-11-108-9/+59
* add payable to ASTyann3002016-11-031-1/+2
* Clear all value types prior to storing.chriseth2016-10-311-7/+1
* ast: ban signed EXP, fixing #1246Yoichi Hirai2016-10-251-1/+4
* Suggest correct version for pragma and complain about pre-release version.chriseth2016-10-252-7/+28
* Merge pull request #1279 from ethereum/semver-helperchriseth2016-10-251-0/+6
|\
| * Export major/minor/patch helpers on SemVerVersionAlex Beregszaszi2016-10-251-0/+6
* | Merge pull request #1264 from ethereum/988chriseth2016-10-253-9/+21
|\ \ | |/ |/|
| * analysis: determine if a member access on a contract is an l-valueYoichi Hirai2016-10-251-0/+5
| * codegen: refactor common codeYoichi Hirai2016-10-242-20/+15
| * codegen: if a member access has been resolved as a variable, follow thatYoichi Hirai2016-10-241-0/+12
* | More checks for missing mobile type.chriseth2016-10-244-11/+44
|/
* codegen: skip contract L for L.Foo where Foo is a typeYoichi Hirai2016-10-241-1/+6
* Fix crash in throw.chriseth2016-10-241-1/+1
* Merge pull request #1240 from ethereum/1151chriseth2016-10-241-1/+5
|\
| * ast: simplifications suggested by @chrisethYoichi Hirai2016-10-201-7/+4
| * When a contract type is super, its members do not contain the functions of it...Yoichi Hirai2016-10-201-1/+8
* | ast: add a null checkYoichi Hirai2016-10-211-0/+1
* | ast: ContractDefinition::inheritableMembers contains enums as well as structsYoichi Hirai2016-10-211-0/+3
* | Support variable references within modifiers for inline assemblyAlex Beregszaszi2016-10-211-1/+1
* | Allow warnings for inline assembly blockAlex Beregszaszi2016-10-201-1/+1
* | Issue warnings if stack is not balanced after inline assembly blockAlex Beregszaszi2016-10-201-2/+24
* | Use warning function in TypeCheckerAlex Beregszaszi2016-10-201-5/+4
|/
* Use >> (SAR) to denote constant shiftsAlex Beregszaszi2016-10-201-1/+3
* Reject negative shifts within constantsAlex Beregszaszi2016-10-201-4/+8
* Support shifting constantsRJ2016-10-201-0/+22
* Disallow unsupported RValues in inline assemblyAlex Beregszaszi2016-10-201-4/+2
* Disallow magic variables in inline assemblyAlex Beregszaszi2016-10-201-0/+4
* Omit non-convertible bound functionsAlex Beregszaszi2016-10-191-1/+2
* Ensure that bound functions cannot be defined without self typeAlex Beregszaszi2016-10-192-2/+11
* `super`'s size on stack is zero, because the expression compiler does not pus...Yoichi Hirai2016-10-181-0/+1
* Check if a fixedBytes fits an integer typeYoichi Hirai2016-10-141-1/+5
* Merge pull request #1169 from ethereum/inline-assembly-tagsAlex Beregszaszi2016-10-121-1/+3
|\
| * Fix assignment after tags in inline assemblyAlex Beregszaszi2016-10-111-1/+3
* | Merge pull request #1181 from ethereum/formal_ignore_pragmachriseth2016-10-112-0/+15
|\ \
| * | Chack for non-version pragmasYoichi Hirai2016-10-111-1/+10
| * | formal: ignore pragmas during Why3 code generationYoichi Hirai2016-10-112-0/+6
| |/
* / Fix pragma keyword checkYoichi Hirai2016-10-111-1/+1
|/
* Merge pull request #1189 from NicolaiSoeborg/developchriseth2016-10-111-2/+2
|\
| * Fix: HexLiteral must be even number of nibblesNicolai2016-10-111-1/+1
| * Add HexLiteral to grammar, fixes #1186Nicolai2016-10-111-2/+2
* | Merge pull request #1168 from ethereum/rename-dev-sha3chriseth2016-10-115-5/+5
|\ \
| * | Rename dev::sha3 to dev::keccak256Alex Beregszaszi2016-10-065-5/+5
* | | Support address in inline assemblyAlex Beregszaszi2016-10-071-0/+3
* | | Add alias keccak256() for sha3()Alex Beregszaszi2016-10-061-0/+2
* | | Support both suicide/selfdestruct in inline assemblyAlex Beregszaszi2016-10-061-2/+5
|/ /
* | Merge pull request #1104 from ethereum/fixmemcostschriseth2016-09-171-4/+13
|\ \
| * | Access output memory area so that we do not pay for resize during call.chriseth2016-09-171-4/+13
* | | Allow value transfer to library functions.chriseth2016-09-171-1/+3
|/ /
* | Fix crash for TypeName[k].chriseth2016-09-161-1/+1
* | Prepare for leaky exceptionsYoichi Hirai2016-09-101-0/+4
* | toFormalType reports errors by an exceptionYoichi Hirai2016-09-102-21/+71
* | Translate mapping types into Why3 arrays when keys are integersYoichi Hirai2016-09-101-0/+14
* | Merge pull request #1047 from pirapira/address-in-preludechriseth2016-09-091-0/+9
|\ \
| * | Add Address module in the WhyML preludeYoichi Hirai2016-09-081-0/+9
* | | Fix problem with release version string.chriseth2016-09-081-3/+5
|/ /
* | Merge pull request #1041 from pirapira/typo_and_whitespacechriseth2016-09-082-2/+2
|\ \
| * | Fix a typo and whitespacesYoichi Hirai2016-09-072-2/+2
* | | Merge pull request #1044 from pirapira/todo_item_to_issuechriseth2016-09-081-1/+1
|\ \ \
| * | | Append an issue id #1043 to a @todo comment about itYoichi Hirai2016-09-071-1/+1
| |/ /
* | | Include assert for selfType on bound functions to avoid crashAlex Beregszaszi2016-09-071-1/+2
* | | Constructor must be internal or publicAlex Beregszaszi2016-09-061-0/+2
* | | Reject constant constructorsAlex Beregszaszi2016-09-061-2/+6
* | | Merge pull request #1016 from ethereum/reservedchriseth2016-09-062-1/+12
|\ \ \
| * | | Raise proper error on reserved keywordsAlex Beregszaszi2016-09-061-1/+11
| * | | Introduce isReservedKeyword()Alex Beregszaszi2016-09-061-0/+1
* | | | Merge pull request #1014 from ethereum/strict-fallbackchriseth2016-09-062-1/+2
|\ \ \ \
| * | | | Reject constant modifier on the fallback functionAlex Beregszaszi2016-09-062-1/+2
| |/ / /
* | | | Merge pull request #1011 from walter-weinmann/wwe_grammarchriseth2016-09-061-3/+3
|\ \ \ \
| * | | | Considering comment from @chriseth regarding FunctionCall.walter-weinmann2016-09-061-3/+1
| * | | | Considering comments from @chriseth regarding ExpressionStatement and Functio...walter-weinmann2016-09-061-4/+6
| * | | | Changes related to issues #984, #989, #999, #1001 and #1004.walter-weinmann2016-09-061-4/+4
* | | | | Merge pull request #1008 from ethereum/stipendwithsendchriseth2016-09-061-1/+6
|\ \ \ \ \
| * | | | | Provide gas stipend manually for send(0).chriseth2016-09-061-1/+6
| | |/ / / | |/| | |
* / | | | Reserve view and pure as keywordsAlex Beregszaszi2016-09-061-0/+2
|/ / / /
* | | | Merge pull request #665 from axic/feature/accept-etherchriseth2016-09-069-44/+133
|\ \ \ \
| * | | | Test and fixes for payable fallback in ABI.chriseth2016-09-061-0/+1
| * | | | Tests for payable / private combination.chriseth2016-09-061-2/+2
| * | | | Make constant and payable mutually exclusive.chriseth2016-09-061-0/+2
| * | | | Change function type to include and propagate payable and constant modifier.chriseth2016-09-065-28/+78
| * | | | Merged in changes from chriseth/payableAlex Beregszaszi2016-09-064-33/+37