aboutsummaryrefslogtreecommitdiffstats
path: root/eth
diff options
context:
space:
mode:
authorFelix Lange <fjl@twurst.com>2016-06-15 06:36:31 +0800
committerFelix Lange <fjl@twurst.com>2016-08-17 23:39:04 +0800
commit1a9e66915b415cb1ca2bc2680f8fb4ff1883787c (patch)
tree849620e85ab94fccf1e49a9a2ea9602d700ea7c1 /eth
parent84d11c19fd246e245906ca7e498a67f6e0c55e1e (diff)
downloaddexon-1a9e66915b415cb1ca2bc2680f8fb4ff1883787c.tar
dexon-1a9e66915b415cb1ca2bc2680f8fb4ff1883787c.tar.gz
dexon-1a9e66915b415cb1ca2bc2680f8fb4ff1883787c.tar.bz2
dexon-1a9e66915b415cb1ca2bc2680f8fb4ff1883787c.tar.lz
dexon-1a9e66915b415cb1ca2bc2680f8fb4ff1883787c.tar.xz
dexon-1a9e66915b415cb1ca2bc2680f8fb4ff1883787c.tar.zst
dexon-1a9e66915b415cb1ca2bc2680f8fb4ff1883787c.zip
common/compiler: simplify solc wrapper
Support for legacy version 0.9.x is gone. The compiler version is no longer cached. Compilation results (and the version) are read directly from stdout using the --combined-json flag. As a workaround for ethereum/solidity#651, source code is written to a temporary file before compilation. Integration of solc in package ethapi and cmd/abigen is now much simpler because the compiler wrapper is no longer passed around as a pointer. Fixes #2806, accidentally
Diffstat (limited to 'eth')
-rw-r--r--eth/backend.go4
-rw-r--r--eth/bind.go2
2 files changed, 2 insertions, 4 deletions
diff --git a/eth/backend.go b/eth/backend.go
index 22388ddb5..e1d123a02 100644
--- a/eth/backend.go
+++ b/eth/backend.go
@@ -31,7 +31,6 @@ import (
"github.com/ethereum/ethash"
"github.com/ethereum/go-ethereum/accounts"
"github.com/ethereum/go-ethereum/common"
- "github.com/ethereum/go-ethereum/common/compiler"
"github.com/ethereum/go-ethereum/common/httpclient"
"github.com/ethereum/go-ethereum/common/registrar/ethreg"
"github.com/ethereum/go-ethereum/core"
@@ -130,7 +129,6 @@ type Ethereum struct {
autodagquit chan bool
etherbase common.Address
solcPath string
- solc *compiler.Solidity
NatSpec bool
PowTest bool
@@ -291,7 +289,7 @@ func CreatePoW(config *Config) (*ethash.Ethash, error) {
// APIs returns the collection of RPC services the ethereum package offers.
// NOTE, some of these services probably need to be moved to somewhere else.
func (s *Ethereum) APIs() []rpc.API {
- return append(ethapi.GetAPIs(s.apiBackend, &s.solcPath, &s.solc), []rpc.API{
+ return append(ethapi.GetAPIs(s.apiBackend, s.solcPath), []rpc.API{
{
Namespace: "eth",
Version: "1.0",
diff --git a/eth/bind.go b/eth/bind.go
index c1366464f..bf7a7fb53 100644
--- a/eth/bind.go
+++ b/eth/bind.go
@@ -44,7 +44,7 @@ type ContractBackend struct {
// Etheruem object.
func NewContractBackend(eth *Ethereum) *ContractBackend {
return &ContractBackend{
- eapi: ethapi.NewPublicEthereumAPI(eth.apiBackend, nil, nil),
+ eapi: ethapi.NewPublicEthereumAPI(eth.apiBackend),
bcapi: ethapi.NewPublicBlockChainAPI(eth.apiBackend),
txapi: ethapi.NewPublicTransactionPoolAPI(eth.apiBackend),
}