Li Xuanji
576964bd01
Mark --formal as deprecated in CLI options
2018-04-11 20:08:41 +01:00
Daniel Kirchner
c15cb6cc7a
Prevent information about file existence outside the allowed paths to leak by mimicing boost::filesystem::weakly_canonical.
2018-04-11 18:52:22 +02:00
Sergiusz Bazanski
f39f36f2c7
Fix file missing error message on imports.
...
Trying to convert an import path into a Boost canonical path causes
boost to throw an exception if the given file does not exist. Thus,
instead of geting to the 'File not found' error, we instead got into the
cath-all handler for 'Unknown exception in read callback'.
This change rearranges the file checks to happen before we create a
canonical Boost path. It also drive-by removes the unnecessary 'else'
block, as the body of the if is a guard-like return block.
2018-04-06 11:03:52 +02:00
Anthony Broad-Crawford
8a18f22b87
Support for error on non-existant or irregular files with command line option to ignore
2018-03-28 10:25:43 +01:00
chriseth
6ec4517929
Use EVM version in gas meter and optimizer.
2018-03-05 11:36:33 +01:00
chriseth
4ce0e7775d
Add constantinople.
2018-03-01 17:19:35 +01:00
chriseth
982476f99d
Add TangerineWhistle.
2018-03-01 17:19:35 +01:00
chriseth
dc317a44e0
Provide EVM version to assembly analysis.
2018-03-01 17:19:35 +01:00
chriseth
5ab4a1ae78
Add ability to set the target EVM version.
2018-03-01 17:19:34 +01:00
Zhen Zhang
5fd9ea4b2a
Stop allow_guessing for command line option parser
2018-02-28 09:31:24 +08:00
Federico Bond
d7532f7b9c
Convert static SourceReferenceFormatter functions to member ones
2018-02-19 15:04:22 +01:00
Alex Beregszaszi
bc1fffb42f
Support --strict-assembly in CLI
2018-01-06 03:28:12 +00:00
chriseth
4e7d1440ab
Merge pull request #3101 from ethereum/compilerstack-header
...
Remove the reliance on empty contract name equals "last contract" in CompilerStack
2017-10-19 13:43:17 +02:00
Alex Beregszaszi
2ce35b77be
Implement CompilerStack.lastContractName()
2017-10-18 23:54:32 +01:00
Alex Beregszaszi
039cc25b1f
Always require a contract/sourceName in CompilerStack
2017-10-18 23:32:33 +01:00
Alex Beregszaszi
6f2865228c
Add readStandardInput helper
2017-10-18 12:56:11 +01:00
Alex Beregszaszi
7186e142b8
Rename contentsString to readFileAsString
2017-10-18 12:55:12 +01:00
Sergiusz Bazanski
a458100175
Do not use remove_trailing_separator from Boost 1.58 as 1.56 is required
2017-10-06 13:55:18 +01:00
Sergiusz Bazanski
71a819654e
Allow trailing slash in solc -allow-paths.
2017-10-06 13:55:18 +01:00
Ali92hm
61dabb2f29
Added --pretty-json commandline option
2017-09-12 21:51:28 +01:00
Ali92hm
487ade1635
Enabling --combined-json to output to file
2017-09-12 21:50:22 +01:00
Ali92hm
1a9c503e93
Added createJson method to make writing json easier
2017-09-12 21:50:22 +01:00
Alex Beregszaszi
bd6510d99a
Simplify assembly printing in CLI
2017-09-11 15:53:20 +01:00
Alex Beregszaszi
bbfb16cf5c
Introduce assemblyString
2017-09-11 15:53:20 +01:00
Alex Beregszaszi
a535a8b06e
Split out the JSON functionality from assembly.stream()
2017-09-11 15:48:52 +01:00
chriseth
9ac2ac14c1
Rename read file callback.
2017-08-23 17:37:35 +02:00
chriseth
e3f90565d8
Avoid some Json copy operations.
2017-08-21 16:28:30 +01:00
Alex Beregszaszi
7222fac456
Remove DocumentationType from natspec
2017-08-15 19:56:38 +01:00
Alex Beregszaszi
30012db396
Add CompilerStack::setOptimiserSettings
2017-07-26 15:17:07 +01:00
Alex Beregszaszi
6848199b66
Add CompilerStack::setLibraries
2017-07-26 15:05:16 +01:00
Alex Beregszaszi
6d8929a71a
Rename onChainMetadata to metadata
2017-07-18 20:54:28 +01:00
chriseth
c78a3a0b01
Add other licenses.
2017-07-01 22:59:08 +01:00
Alex Beregszaszi
555dc4f46f
Remove Why3 generator
2017-06-25 12:26:16 +01:00
Alex Beregszaszi
ba7d698ee6
Make compiler.contractDefinition private
2017-06-22 11:13:06 +01:00
Alex Beregszaszi
b99e4bc68b
Rework functionHashes into methodIdentifiers
2017-06-22 11:13:06 +01:00
chriseth
9084d48750
Merge pull request #2382 from ruchevits/combined-json-hashes
...
Allow including hashes of method signatures in --combined-json output
2017-06-15 10:10:18 +02:00
chriseth
e232a105f0
Merge pull request #2327 from ethereum/assembler-object
...
Return assembler object in AssemblyStack
2017-06-14 14:28:06 +02:00
Edward Ruchevits
2e816967d3
Allow including hashes of method signatures in --combined-json output
2017-06-13 17:03:17 +01:00
chriseth
f583008c73
Remove copyright notice.
2017-06-12 12:28:17 +02:00
Alex Beregszaszi
762bec9116
Nicer machine output in CLI
2017-06-09 16:40:14 +02:00
Alex Beregszaszi
ca92bda886
Supply text representation of assembly
2017-06-09 16:40:14 +02:00
Alex Beregszaszi
f0d213e6b5
Introduce MachineAssemblyObject
2017-06-09 16:40:14 +02:00
chriseth
9d0691b47a
Include license and warranty statement with solc.
2017-06-09 13:11:15 +02:00
chriseth
002df12d13
Merge pull request #2287 from ethereum/legacyAstCLI
...
add legacy/compact AST-format options to CLI
2017-05-29 14:24:55 +02:00
chriseth
261731f7ee
Adapt EVM codegen to new namespace.
2017-05-26 15:08:27 +02:00
chriseth
eaa13d42a0
Support multiple assembly front and backends.
2017-05-26 15:03:29 +02:00
chriseth
f2804c49ed
Handle assembly in one go to allow for different stacks.
2017-05-26 11:50:26 +02:00
chriseth
9a23603af2
Commandline options.
2017-05-26 11:50:26 +02:00
djudjuu
1131c5035f
make src-indices equal ( #2286 )
2017-05-24 14:48:32 +02:00
djudjuu
0f7a9e8149
add legacy/compact AST-format options to CL
2017-05-24 14:48:32 +02:00
chriseth
8eead553af
Merge pull request #1810 from ethereum/compactJson
...
Compact format for AST-Json.
2017-05-22 14:33:46 +02:00
Alex Beregszaszi
bbef2cd4a8
Rename handleMeta to handleNatspec
2017-05-19 16:11:04 +01:00
Alex Beregszaszi
cd5d93da2a
Rename CompilerStack.metadata to CompilerStack.natspec
2017-05-19 16:11:04 +01:00
Alex Beregszaszi
4bf3cbb09a
Use CompilerStack.contractABI directly
2017-05-19 15:57:36 +01:00
Alex Beregszaszi
8169e149c9
Rename CompilerStack.interface to CompilerStack.contractABI
2017-05-19 15:57:36 +01:00
chriseth
dea7b864e6
Compact format for AST-Json with backwards compatibility
2017-05-17 11:14:33 +02:00
Alex Beregszaszi
a95c86e8e4
Catch errors gracefully in CLI assembler
2017-05-06 10:43:58 +01:00
chriseth
017fedebfe
Add missing space.
2017-04-24 14:22:39 +02:00
Alex Beregszaszi
b7951be44a
Add exception guard to ReadFileCallback in CLI
2017-04-22 14:08:28 +01:00
Alex Beregszaszi
4566b4b336
Pass readFileCallback to StandardCompiler in CLI
2017-04-20 23:22:23 +01:00
Alex Beregszaszi
ed64c849f5
Merge pull request #2145 from ethereum/cli-readfile-permissions
...
Check for path permissions before opening file in the CLI file reader
2017-04-20 20:31:27 +01:00
Alex Beregszaszi
b30fad4a49
Check for path permissions before opening file in the CLI file reader
2017-04-20 20:01:17 +01:00
Alex Beregszaszi
8c9e57fadf
Add --standard-json to solc
2017-04-20 19:38:00 +01:00
Alex Beregszaszi
8bf842050e
Support --allow-paths in the CLI
2017-04-20 15:39:30 +01:00
Alex Beregszaszi
54dcb0e11b
Keep gas values as a string in CompilerStack::gasEstimate
2017-04-13 02:18:29 +01:00
Alex Beregszaszi
328f2b0a8e
Use new gasEstimate in CLI
2017-04-13 02:17:40 +01:00
Alex Beregszaszi
623b8eb107
Pull out ReadFile from CompilerStack
2017-04-10 12:49:47 +01:00
chriseth
14196f2621
Allow long library names.
2017-03-14 11:58:43 +01:00
chriseth
31a5e5bfef
Do not overwrite files unless forced.
2017-03-10 19:23:43 +01:00
Alex Beregszaszi
a5d0fd9c8a
Do not create directories . and ..
2017-02-06 14:27:54 +00:00
Alex Beregszaszi
46412473b6
Always escape filenames in solc
2017-02-05 19:19:29 +00:00
VoR0220
b3f0d713a1
fix for linker wrt binaries generated with import statements
...
Signed-off-by: VoR0220 <rj@erisindustries.com>
2017-01-30 13:41:33 -06:00
Alex Beregszaszi
102fd7ee5d
Merge pull request #1604 from ethereum/checksums
...
Warn about invalid checksums of addresses.
2017-01-26 14:42:34 +00:00
Alex Beregszaszi
024061b828
Merge pull request #1610 from ethereum/assemblyModeError
...
Proper error reporting for assembly mode.
2017-01-26 14:41:39 +00:00
Alex Beregszaszi
84bf547f21
Add option to solc to use literal sources in metadta
2017-01-26 13:24:59 +00:00
chriseth
8e29d636f7
Header cleanup.
2017-01-26 13:47:57 +01:00
chriseth
1b097fd3c7
Proper error reporting for assembly mode.
2017-01-26 13:45:23 +01:00
chriseth
3949624a61
Also check library addresses.
2017-01-24 23:37:48 +01:00
Rhett Aultman
610156fb92
Fix bad merge artifact(?)
...
Looks like merging up munged line 188 in CommandLineInterface.cpp,
so that a string literal was being used where a global variable should
be.
2017-01-16 12:32:58 -05:00
Rhett Aultman
0c98e4b2da
Stylistic corrections
2017-01-16 12:32:57 -05:00
Rhett Aultman
071b936b37
Only avoid collision if it's the same file
...
@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.
2017-01-16 12:32:57 -05:00
chriseth
c111d6e27e
Merge pull request #1491 from ameten/refactoring
...
Just refactored some code
2016-12-12 21:43:04 +01:00
Federico Bond
dac95ce398
Remove unused variable inputFiles
2016-12-11 00:41:41 -03:00
Danil Nemirovsky
e5a992937c
- alphabetically sorted string constants per name.
2016-12-08 21:33:09 +03:00
Danil Nemirovsky
f1cf9eb1ea
- moved string constants into common place;
...
- replaced string literals with string constants.
2016-12-08 21:33:09 +03:00
Alex Beregszaszi
35325ee7c3
Update metadata documentation
2016-12-01 16:03:59 +01:00
chriseth
659b635b2d
Make sure some keys are present.
2016-12-01 16:03:59 +01:00
chriseth
5789eaa78d
Metadata stamp.
2016-12-01 16:03:59 +01:00
Federico Bond
29e304d3bc
Fix typos (existant -> existent)
2016-12-01 01:29:30 -03:00
VoR0220
3f9f725737
Fix licensing headers
...
Signed-off-by: VoR0220 <rj@erisindustries.com>
2016-11-23 12:22:33 +01:00
Alex Beregszaszi
81c50143f2
Move JSON helpers to libdevcore/json
2016-11-15 17:38:18 +00:00
Alex Beregszaszi
9719cf38e6
Move InterfaceHandler from string to JSON
2016-11-15 15:55:25 +00:00
Rhett Aultman
58e75c7a48
Unimplemented features moved to their own exception ( #1361 )
...
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
2016-11-14 20:41:58 +00:00
Kevin Boxhoorn
97703ac6e4
Add import remapping documentation to solc --help
...
Derived from the docs found [here](https://solidity.readthedocs.io/en/develop/miscellaneous.html#using-the-commandline-compiler ).
Fixes #1207 .
2016-10-15 17:36:40 +11:00
Alex Beregszaszi
bab96ee1e0
Disallow unknown options in solc
2016-10-06 16:32:56 +02:00
chriseth
8c315a18c9
Fix compiler error.
2016-09-06 11:57:21 +02:00
chriseth
f869f25b84
More comments about size constants.
2016-09-06 11:12:55 +02:00
chriseth
a787e70594
Fix linking for libraries with underscores.
2016-09-02 01:17:02 +02:00
Denton Liu
e00f802f72
Remove standard contracts
2016-08-19 10:34:50 -04:00
chriseth
c282ab379a
Merge pull request #918 from winsvega/solremove4
...
remove solidity --interface
2016-08-17 17:55:40 +02:00