aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity/interface
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #2589 from ethereum/rename-onchainmetadataYoichi Hirai2017-07-193-11/+11
|\ | | | | Rename onChainMetadata to metadata
| * Rename onChainMetadata to metadataAlex Beregszaszi2017-07-193-11/+11
| |
* | Remove unneccesary interface from NatspecAlex Beregszaszi2017-07-193-31/+6
|/
* Mark const variablesAlex Beregszaszi2017-07-181-4/+4
|
* Reorder code for readabilityAlex Beregszaszi2017-07-181-9/+9
|
* Refactor exceptions and provide comment function.chriseth2017-07-131-13/+0
|
* Merge pull request #2527 from ethereum/onlyASTIfAnalysisSuccessfulchriseth2017-07-061-2/+2
|\ | | | | Only output AST if the analysis was successful.
| * Only output AST if the analysis was successful.chriseth2017-07-061-2/+2
| |
* | Do not omit error type.chriseth2017-07-061-4/+4
|/
* Merge pull request #2507 from ethereum/jsonio-safechriseth2017-07-032-14/+17
|\ | | | | Handle parsing errors in StandardCompiler
| * Use more refined states in StandardCompilerAlex Beregszaszi2017-07-031-6/+7
| |
| * Export CompilerStack stateAlex Beregszaszi2017-07-031-8/+10
| |
* | Add Julia mode as an option to EVMCodeTransformAlex Beregszaszi2017-07-031-1/+1
| |
* | Run analyzer in Julia mode if requested in AssemblyStackAlex Beregszaszi2017-07-021-1/+1
|/
* Remove Why3 error classAlex Beregszaszi2017-07-014-27/+0
|
* Remove Why3 generatorAlex Beregszaszi2017-06-252-22/+0
|
* Merge pull request #2404 from ethereum/methodidentifiersAlex Beregszaszi2017-06-223-18/+12
|\ | | | | Clean up method identifiers handling in CLI/CompilerStack
| * Make compiler.contractDefinition privateAlex Beregszaszi2017-06-221-3/+4
| |
| * Rework functionHashes into methodIdentifiersAlex Beregszaszi2017-06-223-7/+8
| |
| * Use compilerStack.functionHashes in StandardCompilerAlex Beregszaszi2017-06-221-9/+1
| |
* | Merge interface/Exceptions and interface/UtilsAlex Beregszaszi2017-06-224-47/+12
|/
* Split block code generation into main and finalize.chriseth2017-06-161-1/+1
|
* Merge pull request #2382 from ruchevits/combined-json-hasheschriseth2017-06-152-0/+11
|\ | | | | Allow including hashes of method signatures in --combined-json output
| * Reverted functionHashes output to use method signature as keysEdward Ruchevits2017-06-141-1/+1
| |
| * Allow including hashes of method signatures in --combined-json outputEdward Ruchevits2017-06-142-0/+11
| |
* | Supply text representation of assemblyAlex Beregszaszi2017-06-091-1/+3
| |
* | Introduce MachineAssemblyObjectAlex Beregszaszi2017-06-092-5/+17
|/
* Remove excess includesAlex Beregszaszi2017-06-092-1/+1
|
* Simplify CodeGenerator by remove seldom used caseAlex Beregszaszi2017-06-091-1/+2
|
* Remove error reporter from code generation phase.chriseth2017-06-082-6/+6
|
* Initial EVM1.5 assembly implementation.chriseth2017-06-081-1/+8
|
* Refactor AssemblyStackAlex Beregszaszi2017-06-072-4/+7
|
* Add analyze(block) to AssemblyStackAlex Beregszaszi2017-06-072-0/+18
|
* Reset error list in parseAndAnalyzeAlex Beregszaszi2017-06-071-0/+1
|
* Fix state after CompilerStack.reset()Alex Beregszaszi2017-06-012-1/+26
|
* Remove unused functions from CompilerStackAlex Beregszaszi2017-06-012-48/+0
|
* Refactor error reportingRhett Aultman2017-05-306-39/+328
| | | | | | | | | 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
* More comments for assemblychriseth2017-05-261-0/+2
|
* Adapt EVM codegen to new namespace.chriseth2017-05-262-16/+14
|
* Support multiple assembly front and backends.chriseth2017-05-262-0/+170
|
* Also change error message.chriseth2017-05-261-1/+1
|
* Scanner requires only the SourcesSet stateAlex Beregszaszi2017-05-251-1/+1
|
* Merge pull request #1810 from ethereum/compactJsonchriseth2017-05-221-1/+2
|\ | | | | Compact format for AST-Json.
| * Support the new AST in StandardCompilerAlex Beregszaszi2017-05-171-0/+1
| |
| * Compact format for AST-Json with backwards compatibilitychriseth2017-05-171-1/+1
| |
* | Rename CompilerStack.metadata to CompilerStack.natspecAlex Beregszaszi2017-05-193-9/+9
| |
* | Rename InterfaceHandler to NatspecAlex Beregszaszi2017-05-194-11/+11
| |
* | Split ABI out of InterfaceHandlerAlex Beregszaszi2017-05-196-105/+212
| |
* | Use CompilerStack.contractABI directlyAlex Beregszaszi2017-05-192-2/+7
| |
* | Rename CompilerStack.interface to CompilerStack.contractABIAlex Beregszaszi2017-05-192-3/+3
|/
* Ensure proper checks are in CompilerStackAlex Beregszaszi2017-05-111-4/+10
|
* Do not crash on AST if parsing failedAlex Beregszaszi2017-05-111-0/+3
|
* Merge pull request #2211 from ethereum/jsonio-fixesAlex Beregszaszi2017-05-021-3/+3
|\ | | | | Follow the JSON I/O spec closely
| * Follow the JSON I/O spec closelyAlex Beregszaszi2017-05-021-3/+3
| |
* | Remove why3 from standard compilerAlex Beregszaszi2017-05-021-24/+0
|/
* conditional reset of compilerState-Enumdjuju2017-04-291-1/+4
|
* Merge pull request #2171 from ethereum/splitParseAndAnalyzechriseth2017-04-282-17/+63
|\ | | | | refactoring parse() into two separate functions
| * error fixeddjuju2017-04-281-8/+7
| |
| * enumchecks not workingdjuju2017-04-282-15/+36
| |
| * documentation, checks and renamingdjuju2017-04-272-14/+13
| |
| * refactoring parse() into two separate functionsdjuju2017-04-272-7/+34
| |
* | Make assembler errors fatalAlex Beregszaszi2017-04-271-12/+4
| |
* | Catch assembler exceptions and throw readable Solidity exceptionsAlex Beregszaszi2017-04-271-2/+35
|/
* Catch jsoncpp exceptionsAlex Beregszaszi2017-04-251-0/+8
|
* Do not crash on invalid JSON inputAlex Beregszaszi2017-04-251-0/+4
|
* Merge pull request #2161 from ethereum/jsonio-cleanupchriseth2017-04-242-8/+12
|\ | | | | Small cleanups to JSON IO
| * Do not fail if parsing failed in StandardCompilerAlex Beregszaszi2017-04-241-1/+1
| |
| * Change error type names to not include spacesAlex Beregszaszi2017-04-241-6/+6
| |
| * Be a bit more verbose and capture Boost exceptions in StandardCompilerAlex Beregszaszi2017-04-241-1/+5
| |
* | Merge pull request #2159 from ethereum/jsonio-source-verifychriseth2017-04-241-4/+45
|\ \ | |/ |/| Verify supplied hash in JSON I/O
| * Verify supplied hash in JSON I/OAlex Beregszaszi2017-04-241-4/+45
| |
* | Document that the ReadFileCallback should not emit exceptionsAlex Beregszaszi2017-04-222-2/+4
|/
* Changed const reference to value.chriseth2017-04-221-1/+1
|
* Support URL sources in StandardCompilerAlex Beregszaszi2017-04-212-3/+35
|
* Rename ast to legacyAST in StandardCompilerAlex Beregszaszi2017-04-211-1/+1
|
* Ensure the language field is present in the JSONAlex Beregszaszi2017-04-211-0/+6
|
* Pull out collectEVMObjectAlex Beregszaszi2017-04-211-17/+19
|
* Enclose local functions in a namespaceAlex Beregszaszi2017-04-211-0/+4
|
* Support Why3 in StandardCompilerAlex Beregszaszi2017-04-211-0/+24
|
* Support gas estimates in StandardCompilerAlex Beregszaszi2017-04-211-1/+1
|
* Reject import URLs for nowAlex Beregszaszi2017-04-211-1/+6
|
* Support the metadata.useLiteralContent settingAlex Beregszaszi2017-04-211-0/+3
|
* Properly split contract filename and nameAlex Beregszaszi2017-04-211-3/+10
|
* Support linkReferencesAlex Beregszaszi2017-04-211-2/+29
|
* Support new assembly outputAlex Beregszaszi2017-04-211-3/+4
|
* Move opcodes inside the bytecode sectionAlex Beregszaszi2017-04-211-1/+2
|
* Support methodIdentifiersAlex Beregszaszi2017-04-211-1/+9
|
* Support proper error reporting in StandardCompilerAlex Beregszaszi2017-04-211-18/+104
|
* Refactor formatErrorAlex Beregszaszi2017-04-211-6/+19
|
* Fail if no sources are givenAlex Beregszaszi2017-04-211-4/+1
|
* Support the AST outputAlex Beregszaszi2017-04-211-1/+2
|
* Include source mapping identifierAlex Beregszaszi2017-04-211-0/+10
|
* Output legacyAssembly in StandardCompilerAlex Beregszaszi2017-04-211-1/+12
|
* Capture error messages from the JSON parserAlex Beregszaszi2017-04-211-2/+8
|
* Add formatFatalError() to StandardCompilerAlex Beregszaszi2017-04-211-0/+15
|
* Parse remappings in StandardCompilerAlex Beregszaszi2017-04-211-0/+5
|
* Parse libraries in StandardCompilerAlex Beregszaszi2017-04-211-0/+8
|
* Parse optimizer settings in StandardCompilerAlex Beregszaszi2017-04-211-3/+6
|
* Catch exceptions of StandardCompilerAlex Beregszaszi2017-04-212-1/+15
|
* Initial implementation of StandardCompilerAlex Beregszaszi2017-04-211-0/+132
|
* Add StandardCompiler skeletonAlex Beregszaszi2017-04-212-0/+90
|
* Fix source index allocation in CompilerStack. Depending on ↵Alex Beregszaszi2017-04-211-1/+2
| | | | compiler(optimisations) this could be off-by-one.
* Keep gas values as a string in CompilerStack::gasEstimateAlex Beregszaszi2017-04-131-3/+3
|
* Exclude fallback function from the internal functions in estimateGasAlex Beregszaszi2017-04-131-1/+2
|
* Move gasEstimate into CompilerStackAlex Beregszaszi2017-04-132-0/+88
|
* Merge pull request #2098 from ethereum/sourceformatterAlex Beregszaszi2017-04-101-0/+11
|\ | | | | Introduce formatExceptionInformation
| * Introduce formatExceptionInformationAlex Beregszaszi2017-04-101-0/+11
| |
* | Pull out ReadFile from CompilerStackAlex Beregszaszi2017-04-103-13/+50
|/
* Rename ErrorMesage to ErrorMessageAlex Beregszaszi2017-03-172-3/+3
|
* Merge pull request #1747 from ethereum/fixICEInternalConstructorYoichi Hirai2017-03-091-1/+1
|\ | | | | Move privateness of constructor into AST itself.
| * Move public constructor property into AST itself.chriseth2017-03-061-1/+1
| |
* | Merge pull request #1699 from ethereum/asmlabelsYoichi Hirai2017-03-082-0/+10
|\ \ | | | | | | Assembly labels with stack information
| * | Analysis refactoring.chriseth2017-03-032-0/+10
| |/
* | Merge pull request #1733 from ethereum/selfReferentialConstantchriseth2017-03-071-0/+9
|\ \ | | | | | | Detect cyclic dependencies between constants.
| * | Check for circular references in constant variables.chriseth2017-03-061-0/+9
| |/
* / Error constructor.chriseth2017-03-062-2/+12
|/
* Add line info to serious exceptions.chriseth2017-02-251-0/+14
|
* Extract scopes into compiler stack.chriseth2017-02-142-1/+5
|
* Refactor json return type generation.chriseth2017-01-272-20/+38
|
* Add option to store literal sources in metadataAlex Beregszaszi2017-01-262-4/+11
|
* Check if constructor is public or not.chriseth2017-01-211-1/+5
|
* Reset AST node IDs between compilation runs.chriseth2017-01-201-0/+1
|
* Merge pull request #1397 from roadriverrail/contract_collisionchriseth2017-01-182-42/+61
|\ | | | | Error out when contracts collide on name
| * Provide fall-back method for contract lookupRhett Aultman2017-01-171-1/+18
| | | | | | | | | | | | | | | | Properly, contracts are now looked up via <source>:<contract> identifiers called "fully qualified names." As a modicum of backward-compatibility, failure on a lookup is now backed up by seeing if the ":" exists at all, and if it doesn't, then the known contracts are scanned for any matching contract name.
| * Remove checkLibraryNameClashes()Rhett Aultman2017-01-172-37/+0
| | | | | | | | | | | | | | | | The library name clash checker throws errors when two libraries of the same name are spotted. In a previous commit, this function was rewritten to use fully-qualified names instead, which makes it redundant to the checker for multiply-declared identifiers. Since it no longer serves a clear purpose, the function is being dropped.
| * Remove unique error for contract collisionRhett Aultman2017-01-171-39/+10
| | | | | | | | | | | | Because contracts are uniquely identified by their source unit, there is no need for a unique error for this; it's actually covered by the checker for double-declaration of identifiers.
| * Stylistic correctionsRhett Aultman2017-01-171-8/+4
| |
| * Push the error instead of throwing itRhett Aultman2017-01-171-10/+34
| | | | | | | | | | | | | | Throwing a CompilerError on multiple contract definition violates the expectations of the test suite, which thinks that compile() will return false if the code can't compile. This brings contract collision reporting in line with most of the other errors.
| * Only avoid collision if it's the same fileRhett Aultman2017-01-172-12/+40
| | | | | | | | | | | | | | | | | | @chriseth had suggested that it would be better if contracts were referenced in a file:contract notation, and that we output .bin files that prepend original path names if necessary to avoid a collision. This commit is mostly a draft; it still needs to be run through the test suite.
| * 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
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous behaviour, courtesy of the [] operator in std::map, would uncritically store a new ContractDefinition in m_contracts even when a ContractDefinition already existed. This "resolved" collissions on contract names by clobbering the original one with the new one, and could lead to scenarios where the clobber would only be discovered when the original ContractDefinition could not be found or referred to, which was an unhelpful InternalCompilerError. This change checks the m_contracts map for a collision first and will not let the ContractDefinition be changed to a new one once it's set, throwing a CompilerError with information about the conflict.
* | 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
|/
* fixedVoR02202017-01-121-2/+2
| | | | Signed-off-by: VoR0220 <rj@erisindustries.com>
* added fix and a test for order independence of nested prefixingVoR02202017-01-121-2/+2
| | | | Signed-off-by: VoR0220 <rj@erisindustries.com>
* cleanupVoR02202017-01-122-14/+15
| | | | | | | | Signed-off-by: VoR0220 <rj@erisindustries.com> fixup Signed-off-by: VoR0220 <rj@erisindustries.com>
* fixed unused filepath bugVoR02202017-01-111-2/+1
| | | | Signed-off-by: VoR0220 <rj@erisindustries.com>
* much smaller helper functionVoR02202017-01-102-5/+5
| | | | Signed-off-by: VoR0220 <rj@erisindustries.com>
* can do this purely on length. Also made prefix filesystem string for more ↵VoR02202017-01-091-27/+16
| | | | | | accurate readings. Signed-off-by: VoR0220 <rj@erisindustries.com>
* fixed test and added solutionVoR02202017-01-091-3/+26
| | | | Signed-off-by: VoR0220 <rj@erisindustries.com>
* interface: change absolutePath() so that ".dir" is considered as an absolute ↵Yoichi Hirai2017-01-041-3/+3
| | | | | | path fixes #1534
* Use multiple URLs for metadata.chriseth2016-12-131-2/+4
|
* Merge pull request #1491 from ameten/refactoringchriseth2016-12-131-1/+1
|\ | | | | Just refactored some code
| * - fixed a misprint.Danil Nemirovsky2016-12-091-1/+1
| |
* | Warn about using msg.value in non-payable functionFederico Bond2016-12-091-0/+10
|/
* Add the `_runs` parameter.chriseth2016-12-012-3/+3
|
* Fix type of optimizeRunsAlex Beregszaszi2016-12-011-1/+1
|
* Use CBOR encoding.chriseth2016-12-011-1/+8
|
* Add swarm hash to the end of the bytecode.chriseth2016-12-011-0/+1
|
* Make sure some keys are present.chriseth2016-12-011-0/+3
|
* Incorporate comments.chriseth2016-12-011-10/+10
|
* Metadata stamp.chriseth2016-12-012-24/+94
|
* Fix licensing headersVoR02202016-11-2312-48/+48
| | | | Signed-off-by: VoR0220 <rj@erisindustries.com>
* Include payable for the constructor in the ABIAlex Beregszaszi2016-11-181-0/+1
|
* Change encoding to address-funid and add "function" as ABI type.chriseth2016-11-161-1/+1
|
* Stored combined creation and runtime tags.chriseth2016-11-161-3/+14
| | | | | | | Includes a change to Assembly to allow tags from sub-assemblies to be used. Sorry, this get a bit bigger than I thought.
* ABI: Use external function.chriseth2016-11-161-2/+2
|
* Move InterfaceHandler from string to JSONAlex Beregszaszi2016-11-154-29/+26
|
* 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-152-0/+7
| | | | | | | | | | | | | | | | | | Unimplemented features moved to their own exception InternalCompilerError is an exception that really should be reserved for actual internal errors of the compiler. Unimplemented features can now use either solUnimplemented( ) or, if it should be conditional, then solUnimplementedAssert( ). * Revert some unimplemented exceptions, add handlers The jsonCompiler and CommandLineInterface needed handlers for the new UnimplementedFeatureException, and some cases I had moved on to the new exception were better treated as real internal compiler errors. * Standardize on "Unimplemented feature" message
* Suggest correct version for pragma and complain about pre-release version.chriseth2016-10-251-3/+15
|
* Rename dev::sha3 to dev::keccak256Alex Beregszaszi2016-10-062-2/+2
|
* Fix problem with release version string.chriseth2016-09-081-3/+5
|
* Reject constant modifier on the fallback functionAlex Beregszaszi2016-09-061-1/+0
|
* Test and fixes for payable fallback in ABI.chriseth2016-09-061-0/+1
|
* Do not include the payable keyword for constructorsAlex Beregszaszi2016-09-061-1/+0
|
* Support payable keyword for functionsAlex Beregszaszi2016-09-061-0/+2
|
* Do not use internal types for event parameters.chriseth2016-09-021-1/+2
|
* fix CompilerStack::absolutePathDimitry2016-09-011-1/+1
|
* Merge pull request #664 from axic/feature/interface-fallbackchriseth2016-08-301-1/+9
|\ | | | | Introduce fallback entry in the ABI
| * Introduce fallback entry in the ABIAlex Beregszaszi2016-08-271-1/+9
| |
* | Merge pull request #941 from chriseth/versionStringBob Summerwill2016-08-271-4/+2
|\ \ | |/ |/| Version string
| * Make versioning semver compatible and force commit hash availability.chriseth2016-08-261-4/+2
| |
* | Remove standard contractsDenton Liu2016-08-192-30/+8
|/
* remove solidity --interfaceDimitry2016-08-174-85/+1
|
* Source location as part of AST.chriseth2016-07-212-2/+127
|
* Provide formal version in json output.chriseth2016-07-192-3/+6
|
* Allow remappings to change depending on the context.chriseth2016-06-092-16/+88
|
* Make solidity independent from ethcore.chriseth2016-04-071-3/+1
|
* reduce unnecessary solidity:: namespaceDimitry2016-04-041-3/+3
|
* rename namespace for instruction.h/cpp in libevmasmDimitry2016-04-021-3/+3
|
* Remove code duplication in source references formatter.chriseth2016-04-012-32/+34
|
* Do not use source reference if it is empty.chriseth2016-03-311-3/+8
|
* Parsing for inline assembly.chriseth2016-03-302-6/+6
|
* - inline and assembly keywords addedLianaHus2016-03-122-5/+5
| | | | - some style fixes
* BREAKING: Implement delegatecall and make default for library calls.chriseth2016-03-121-1/+1
|
* Merge pull request #356 from guanqun/break-not-in-loopchriseth2016-01-213-0/+10
|\ | | | | check whether break/continue is in the loop
| * code changes according to Chris's commentsLu Guanqun2016-01-191-1/+1
| |
| * check whether break/continue is in the loopLu Guanqun2016-01-153-0/+10
| |
* | Merge pull request #351 from chriseth/autoloadchriseth2016-01-192-31/+76
|\ \ | | | | | | Automatically load imported files in solc.
| * | Build fix for MacOS.chriseth2016-01-141-1/+1
| | |
| * | Autoload files in solc.chriseth2016-01-122-31/+76
| |/
* | Set error flag to true.chriseth2016-01-141-0/+1
| |
* | Detect library name clashes.chriseth2016-01-142-0/+36
|/
* Simple aliasing during import.chriseth2015-12-181-0/+3
|
* Parse complex import directives.chriseth2015-12-181-1/+1
|
* Relative paths in import directives.chriseth2015-12-102-5/+26
|
* Source units are independent scopes.chriseth2015-12-101-0/+6
|
* Make members context-sensitive.chriseth2015-11-261-1/+1
|
* Fix: Cope with non-existing commit hash.chriseth2015-11-031-1/+4
|
* Rename error type.chriseth2015-10-282-3/+3
|
* Preliminary why3 code output.chriseth2015-10-274-19/+41
|
* Store docstrings in AST annotations.chriseth2015-10-264-334/+64
|
* File reorganisation.chriseth2015-10-2113-0/+2029