diff options
author | zelig <viktor.tron@gmail.com> | 2015-09-15 06:35:22 +0800 |
---|---|---|
committer | zelig <viktor.tron@gmail.com> | 2015-09-15 06:35:22 +0800 |
commit | 3a5e7ed9a60c946f3f807422355b0dae83aadcf2 (patch) | |
tree | dab2833d24b6d3f9336119716a9abb52c5adb495 /common | |
parent | 071e2cd08e5492b5f4bae4f7dda03c5d47a0cd1d (diff) | |
download | dexon-3a5e7ed9a60c946f3f807422355b0dae83aadcf2.tar dexon-3a5e7ed9a60c946f3f807422355b0dae83aadcf2.tar.gz dexon-3a5e7ed9a60c946f3f807422355b0dae83aadcf2.tar.bz2 dexon-3a5e7ed9a60c946f3f807422355b0dae83aadcf2.tar.lz dexon-3a5e7ed9a60c946f3f807422355b0dae83aadcf2.tar.xz dexon-3a5e7ed9a60c946f3f807422355b0dae83aadcf2.tar.zst dexon-3a5e7ed9a60c946f3f807422355b0dae83aadcf2.zip |
new solc api:
* use legacy version matcher
* optimise just a boolean flag
* skipf for messages in tests
Diffstat (limited to 'common')
-rw-r--r-- | common/compiler/solidity.go | 22 | ||||
-rw-r--r-- | common/compiler/solidity_test.go | 6 |
2 files changed, 14 insertions, 14 deletions
diff --git a/common/compiler/solidity.go b/common/compiler/solidity.go index 5ded4fc6e..aca3a1fc2 100644 --- a/common/compiler/solidity.go +++ b/common/compiler/solidity.go @@ -35,8 +35,8 @@ import ( ) var ( - versionRegExp = regexp.MustCompile("[0-9]+\\.[0-9]+\\.[0-9]+") - newAPIRegexp = regexp.MustCompile("0\\.1\\.[2-9][0-9]*") + versionRegexp = regexp.MustCompile("[0-9]+\\.[0-9]+\\.[0-9]+") + legacyRegexp = regexp.MustCompile("0\\.(9\\..*|1\\.[01])") paramsLegacy = []string{ "--binary", // Request to output the contract in binary (hexadecimal). "file", // @@ -50,13 +50,13 @@ var ( "1", } paramsNew = []string{ - "--bin", // Request to output the contract in binary (hexadecimal). - "--abi", // Request to output the contract's JSON ABI interface. - "--userdoc", // Request to output the contract's Natspec user documentation. - "--devdoc", // Request to output the contract's Natspec developer documentation. - "--add-std", // include standard lib contracts - "--optimize=1", // code optimizer switched on - "-o", // output directory + "--bin", // Request to output the contract in binary (hexadecimal). + "--abi", // Request to output the contract's JSON ABI interface. + "--userdoc", // Request to output the contract's Natspec user documentation. + "--devdoc", // Request to output the contract's Natspec developer documentation. + "--add-std", // include standard lib contracts + "--optimize", // code optimizer switched on + "-o", // output directory } ) @@ -102,8 +102,8 @@ func New(solcPath string) (sol *Solidity, err error) { } fullVersion := out.String() - version := versionRegExp.FindString(fullVersion) - legacy := !newAPIRegexp.MatchString(version) + version := versionRegexp.FindString(fullVersion) + legacy := legacyRegexp.MatchString(version) sol = &Solidity{ solcPath: solcPath, diff --git a/common/compiler/solidity_test.go b/common/compiler/solidity_test.go index 905a5957c..258a78f52 100644 --- a/common/compiler/solidity_test.go +++ b/common/compiler/solidity_test.go @@ -46,9 +46,9 @@ contract test { func TestCompiler(t *testing.T) { sol, err := New("") if err != nil { - t.Skip("solc not found: skip: %v", err) + t.Skipf("solc not found: %v", err) } else if sol.Version() != solcVersion { - t.Skip("WARNING: skipping due to a newer version of solc found (%v, expect %v)", sol.Version(), solcVersion) + t.Skipf("WARNING: a newer version of solc found (%v, expect %v)", sol.Version(), solcVersion) } contracts, err := sol.Compile(source) if err != nil { @@ -83,7 +83,7 @@ func TestCompileError(t *testing.T) { func TestNoCompiler(t *testing.T) { _, err := New("/path/to/solc") if err != nil { - t.Log("solidity quits with error: %v", err) + t.Logf("solidity quits with error: %v", err) } else { t.Errorf("no solc installed, but got no error") } |