Merge pull request #4350 from ethereum/constructorWorkaroundExternal

New constructor syntax for external compilation tests
This commit is contained in:
Alex Beregszaszi 2018-06-26 00:45:55 +02:00 committed by GitHub
commit 4be9dc4304
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
39 changed files with 41 additions and 41 deletions

View File

@ -102,7 +102,7 @@ contract MultiSigWallet {
/// @dev Contract constructor sets initial owners and required number of confirmations. /// @dev Contract constructor sets initial owners and required number of confirmations.
/// @param _owners List of initial owners. /// @param _owners List of initial owners.
/// @param _required Number of required confirmations. /// @param _required Number of required confirmations.
function MultiSigWallet(address[] _owners, uint _required) constructor(address[] _owners, uint _required)
public public
validRequirement(_owners.length, _required) validRequirement(_owners.length, _required)
{ {

View File

@ -19,7 +19,7 @@ contract MultiSigWalletWithDailyLimit is MultiSigWallet {
/// @param _owners List of initial owners. /// @param _owners List of initial owners.
/// @param _required Number of required confirmations. /// @param _required Number of required confirmations.
/// @param _dailyLimit Amount in wei, which can be withdrawn without confirmations on a daily basis. /// @param _dailyLimit Amount in wei, which can be withdrawn without confirmations on a daily basis.
function MultiSigWalletWithDailyLimit(address[] _owners, uint _required, uint _dailyLimit) constructor(address[] _owners, uint _required, uint _dailyLimit)
public public
MultiSigWallet(_owners, _required) MultiSigWallet(_owners, _required)
{ {

View File

@ -50,7 +50,7 @@ contract ico is safeMath {
uint256 public totalMint; uint256 public totalMint;
uint256 public totalPremiumMint; uint256 public totalPremiumMint;
function ico(address foundation, address priceSet, uint256 exchangeRate, uint256 startBlockNum, address[] genesisAddr, uint256[] genesisValue) { constructor(address foundation, address priceSet, uint256 exchangeRate, uint256 startBlockNum, address[] genesisAddr, uint256[] genesisValue) {
/* /*
Installation function. Installation function.

View File

@ -35,8 +35,8 @@ contract moduleHandler is multiOwner, announcementTypes {
address public foundationAddress; address public foundationAddress;
uint256 debugModeUntil = block.number + 1000000; uint256 debugModeUntil = block.number + 1000000;
function moduleHandler(address[] newOwners) multiOwner(newOwners) {}
constructor(address[] newOwners) multiOwner(newOwners) {}
function load(address foundation, bool forReplace, address Token, address Premium, address Publisher, address Schelling, address Provider) { function load(address foundation, bool forReplace, address Token, address Premium, address Publisher, address Schelling, address Provider) {
/* /*
Loading modulest to ModuleHandler. Loading modulest to ModuleHandler.

View File

@ -12,7 +12,7 @@ contract multiOwner is safeMath {
/* /*
Constructor Constructor
*/ */
function multiOwner(address[] newOwners) { constructor(address[] newOwners) {
for ( uint256 a=0 ; a<newOwners.length ; a++ ) { for ( uint256 a=0 ; a<newOwners.length ; a++ ) {
_addOwner(newOwners[a]); _addOwner(newOwners[a]);
} }

View File

@ -40,7 +40,7 @@ contract premium is module, safeMath {
mapping(address => bool) public genesis; mapping(address => bool) public genesis;
function premium(bool forReplace, address moduleHandler, address dbAddress, address icoContractAddr, address[] genesisAddr, uint256[] genesisValue) { constructor(bool forReplace, address moduleHandler, address dbAddress, address icoContractAddr, address[] genesisAddr, uint256[] genesisValue) {
/* /*
Setup function. Setup function.
If an ICOaddress is defined then the balance of the genesis addresses will be set as well. If an ICOaddress is defined then the balance of the genesis addresses will be set as well.

View File

@ -118,7 +118,7 @@ contract provider is module, safeMath, announcementTypes {
uint256 private currentSchellingRound = 1; uint256 private currentSchellingRound = 1;
function provider(address _moduleHandler) { constructor(address _moduleHandler) {
/* /*
Install function. Install function.

View File

@ -61,7 +61,7 @@ contract publisher is announcementTypes, module, safeMath {
mapping (address => uint256[]) public opponents; mapping (address => uint256[]) public opponents;
function publisher(address moduleHandler) { constructor(address moduleHandler) {
/* /*
Installation function. The installer will be registered in the admin list automatically Installation function. The installer will be registered in the admin list automatically

View File

@ -45,7 +45,7 @@ contract schellingDB is safeMath, schellingVars {
/* /*
Constructor Constructor
*/ */
function schellingDB() { constructor() {
rounds.length = 2; rounds.length = 2;
rounds[0].blockHeight = block.number; rounds[0].blockHeight = block.number;
currentSchellingRound = 1; currentSchellingRound = 1;
@ -247,7 +247,7 @@ contract schelling is module, announcementTypes, schellingVars {
bytes1 public belowChar = 0x30; bytes1 public belowChar = 0x30;
schellingDB private db; schellingDB private db;
function schelling(address _moduleHandler, address _db, bool _forReplace) { constructor(address _moduleHandler, address _db, bool _forReplace) {
/* /*
Installation function. Installation function.

View File

@ -48,7 +48,7 @@ contract token is safeMath, module, announcementTypes {
mapping(address => bool) public genesis; mapping(address => bool) public genesis;
function token(bool forReplace, address moduleHandler, address dbAddr, address icoContractAddr, address exchangeContractAddress, address[] genesisAddr, uint256[] genesisValue) payable { constructor(bool forReplace, address moduleHandler, address dbAddr, address icoContractAddr, address exchangeContractAddress, address[] genesisAddr, uint256[] genesisValue) payable {
/* /*
Installation function Installation function

View File

@ -13,7 +13,7 @@ contract CategoricalEvent is Event {
/// @param _collateralToken Tokens used as collateral in exchange for outcome tokens /// @param _collateralToken Tokens used as collateral in exchange for outcome tokens
/// @param _oracle Oracle contract used to resolve the event /// @param _oracle Oracle contract used to resolve the event
/// @param outcomeCount Number of event outcomes /// @param outcomeCount Number of event outcomes
function CategoricalEvent( constructor(
Token _collateralToken, Token _collateralToken,
Oracle _oracle, Oracle _oracle,
uint8 outcomeCount uint8 outcomeCount

View File

@ -33,7 +33,7 @@ contract Event {
/// @param _collateralToken Tokens used as collateral in exchange for outcome tokens /// @param _collateralToken Tokens used as collateral in exchange for outcome tokens
/// @param _oracle Oracle contract used to resolve the event /// @param _oracle Oracle contract used to resolve the event
/// @param outcomeCount Number of event outcomes /// @param outcomeCount Number of event outcomes
function Event(Token _collateralToken, Oracle _oracle, uint8 outcomeCount) constructor(Token _collateralToken, Oracle _oracle, uint8 outcomeCount)
public public
{ {
// Validate input // Validate input

View File

@ -28,7 +28,7 @@ contract ScalarEvent is Event {
/// @param _oracle Oracle contract used to resolve the event /// @param _oracle Oracle contract used to resolve the event
/// @param _lowerBound Lower bound for event outcome /// @param _lowerBound Lower bound for event outcome
/// @param _upperBound Lower bound for event outcome /// @param _upperBound Lower bound for event outcome
function ScalarEvent( constructor(
Token _collateralToken, Token _collateralToken,
Oracle _oracle, Oracle _oracle,
int _lowerBound, int _lowerBound,

View File

@ -70,7 +70,7 @@ contract Campaign {
/// @param _fee Market fee /// @param _fee Market fee
/// @param _funding Initial funding for market /// @param _funding Initial funding for market
/// @param _deadline Campaign deadline /// @param _deadline Campaign deadline
function Campaign( constructor(
Event _eventContract, Event _eventContract,
MarketFactory _marketFactory, MarketFactory _marketFactory,
MarketMaker _marketMaker, MarketMaker _marketMaker,

View File

@ -38,7 +38,7 @@ contract StandardMarket is Market {
/// @param _eventContract Event contract /// @param _eventContract Event contract
/// @param _marketMaker Market maker contract /// @param _marketMaker Market maker contract
/// @param _fee Market fee /// @param _fee Market fee
function StandardMarket(address _creator, Event _eventContract, MarketMaker _marketMaker, uint24 _fee) constructor(address _creator, Event _eventContract, MarketMaker _marketMaker, uint24 _fee)
public public
{ {
// Validate inputs // Validate inputs

View File

@ -8,7 +8,7 @@ contract Migrations {
if (msg.sender == owner) _; if (msg.sender == owner) _;
} }
function Migrations() { constructor() {
owner = msg.sender; owner = msg.sender;
} }

View File

@ -34,7 +34,7 @@ contract CentralizedOracle is Oracle {
*/ */
/// @dev Constructor sets owner address and IPFS hash /// @dev Constructor sets owner address and IPFS hash
/// @param _ipfsHash Hash identifying off chain event description /// @param _ipfsHash Hash identifying off chain event description
function CentralizedOracle(address _owner, bytes _ipfsHash) constructor(address _owner, bytes _ipfsHash)
public public
{ {
// Description hash cannot be null // Description hash cannot be null

View File

@ -22,7 +22,7 @@ contract DifficultyOracle is Oracle {
*/ */
/// @dev Contract constructor validates and sets target block number /// @dev Contract constructor validates and sets target block number
/// @param _blockNumber Target block number /// @param _blockNumber Target block number
function DifficultyOracle(uint _blockNumber) constructor(uint _blockNumber)
public public
{ {
// Block has to be in the future // Block has to be in the future

View File

@ -55,7 +55,7 @@ contract FutarchyOracle is Oracle {
/// @param marketMaker Market maker contract /// @param marketMaker Market maker contract
/// @param fee Market fee /// @param fee Market fee
/// @param _deadline Decision deadline /// @param _deadline Decision deadline
function FutarchyOracle( constructor(
address _creator, address _creator,
EventFactory eventFactory, EventFactory eventFactory,
Token collateralToken, Token collateralToken,

View File

@ -33,7 +33,7 @@ contract FutarchyOracleFactory {
*/ */
/// @dev Constructor sets event factory contract /// @dev Constructor sets event factory contract
/// @param _eventFactory Event factory contract /// @param _eventFactory Event factory contract
function FutarchyOracleFactory(EventFactory _eventFactory) constructor(EventFactory _eventFactory)
public public
{ {
require(address(_eventFactory) != address(0)); require(address(_eventFactory) != address(0));

View File

@ -16,7 +16,7 @@ contract MajorityOracle is Oracle {
*/ */
/// @dev Allows to create an oracle for a majority vote based on other oracles /// @dev Allows to create an oracle for a majority vote based on other oracles
/// @param _oracles List of oracles taking part in the majority vote /// @param _oracles List of oracles taking part in the majority vote
function MajorityOracle(Oracle[] _oracles) constructor(Oracle[] _oracles)
public public
{ {
// At least 2 oracles should be defined // At least 2 oracles should be defined

View File

@ -38,7 +38,7 @@ contract SignedMessageOracle is Oracle {
/// @param v Signature parameter /// @param v Signature parameter
/// @param r Signature parameter /// @param r Signature parameter
/// @param s Signature parameter /// @param s Signature parameter
function SignedMessageOracle(bytes32 _descriptionHash, uint8 v, bytes32 r, bytes32 s) constructor(bytes32 _descriptionHash, uint8 v, bytes32 r, bytes32 s)
public public
{ {
signer = ecrecover(_descriptionHash, v, r, s); signer = ecrecover(_descriptionHash, v, r, s);

View File

@ -46,7 +46,7 @@ contract UltimateOracle is Oracle {
/// @param _challengePeriod Time to challenge oracle outcome /// @param _challengePeriod Time to challenge oracle outcome
/// @param _challengeAmount Amount to challenge the outcome /// @param _challengeAmount Amount to challenge the outcome
/// @param _frontRunnerPeriod Time to overbid the front-runner /// @param _frontRunnerPeriod Time to overbid the front-runner
function UltimateOracle( constructor(
Oracle _forwardedOracle, Oracle _forwardedOracle,
Token _collateralToken, Token _collateralToken,
uint8 _spreadMultiplier, uint8 _spreadMultiplier,

View File

@ -31,7 +31,7 @@ contract OutcomeToken is StandardToken {
* Public functions * Public functions
*/ */
/// @dev Constructor sets events contract address /// @dev Constructor sets events contract address
function OutcomeToken() constructor()
public public
{ {
eventContract = msg.sender; eventContract = msg.sender;

View File

@ -108,7 +108,7 @@ contract MilestoneTracker {
/// @param _arbitrator Address assigned to be the arbitrator /// @param _arbitrator Address assigned to be the arbitrator
/// @param _donor Address assigned to be the donor /// @param _donor Address assigned to be the donor
/// @param _recipient Address assigned to be the recipient /// @param _recipient Address assigned to be the recipient
function MilestoneTracker ( constructor (
address _arbitrator, address _arbitrator,
address _donor, address _donor,
address _recipient address _recipient

View File

@ -15,7 +15,7 @@ contract DayLimit {
* @dev Constructor that sets the passed value as a dailyLimit. * @dev Constructor that sets the passed value as a dailyLimit.
* @param _limit uint256 to represent the daily limit. * @param _limit uint256 to represent the daily limit.
*/ */
function DayLimit(uint256 _limit) { constructor(uint256 _limit) {
dailyLimit = _limit; dailyLimit = _limit;
lastDay = today(); lastDay = today();
} }

View File

@ -15,7 +15,7 @@ contract LimitBalance {
* @dev Constructor that sets the passed value as a limit. * @dev Constructor that sets the passed value as a limit.
* @param _limit uint256 to represent the limit. * @param _limit uint256 to represent the limit.
*/ */
function LimitBalance(uint256 _limit) { constructor(uint256 _limit) {
limit = _limit; limit = _limit;
} }

View File

@ -25,7 +25,7 @@ contract MultisigWallet is Multisig, Shareable, DayLimit {
* @param _owners A list of owners. * @param _owners A list of owners.
* @param _required The amount required for a transaction to be approved. * @param _required The amount required for a transaction to be approved.
*/ */
function MultisigWallet(address[] _owners, uint256 _required, uint256 _daylimit) constructor(address[] _owners, uint256 _required, uint256 _daylimit)
Shareable(_owners, _required) Shareable(_owners, _required)
DayLimit(_daylimit) { } DayLimit(_daylimit) { }

View File

@ -12,7 +12,7 @@ contract CappedCrowdsale is Crowdsale {
uint256 public cap; uint256 public cap;
function CappedCrowdsale(uint256 _cap) { constructor(uint256 _cap) {
cap = _cap; cap = _cap;
} }

View File

@ -40,7 +40,7 @@ contract Crowdsale {
event TokenPurchase(address indexed purchaser, address indexed beneficiary, uint256 value, uint256 amount); event TokenPurchase(address indexed purchaser, address indexed beneficiary, uint256 value, uint256 amount);
function Crowdsale(uint256 _startBlock, uint256 _endBlock, uint256 _rate, address _wallet) { constructor(uint256 _startBlock, uint256 _endBlock, uint256 _rate, address _wallet) {
require(_startBlock >= block.number); require(_startBlock >= block.number);
require(_endBlock >= _startBlock); require(_endBlock >= _startBlock);
require(_rate > 0); require(_rate > 0);

View File

@ -22,7 +22,7 @@ contract RefundVault is Ownable {
event RefundsEnabled(); event RefundsEnabled();
event Refunded(address indexed beneficiary, uint256 weiAmount); event Refunded(address indexed beneficiary, uint256 weiAmount);
function RefundVault(address _wallet) { constructor(address _wallet) {
require(_wallet != address(0x0)); require(_wallet != address(0x0));
wallet = _wallet; wallet = _wallet;
state = State.Active; state = State.Active;

View File

@ -21,7 +21,7 @@ contract RefundableCrowdsale is FinalizableCrowdsale {
// refund vault used to hold funds while crowdsale is running // refund vault used to hold funds while crowdsale is running
RefundVault public vault; RefundVault public vault;
function RefundableCrowdsale(uint256 _goal) { constructor(uint256 _goal) {
vault = new RefundVault(wallet); vault = new RefundVault(wallet);
goal = _goal; goal = _goal;
} }

View File

@ -10,7 +10,7 @@ import "../ownership/Ownable.sol";
*/ */
contract Destructible is Ownable { contract Destructible is Ownable {
function Destructible() payable { } constructor() payable { }
/** /**
* @dev Transfers the current balance to the owner and terminates the contract. * @dev Transfers the current balance to the owner and terminates the contract.

View File

@ -12,7 +12,7 @@ import "../token/ERC20Basic.sol";
*/ */
contract TokenDestructible is Ownable { contract TokenDestructible is Ownable {
function TokenDestructible() payable { } constructor() payable { }
/** /**
* @notice Terminate contract and refund to owner * @notice Terminate contract and refund to owner

View File

@ -21,7 +21,7 @@ contract HasNoEther is Ownable {
* constructor. By doing it this way we prevent a payable constructor from working. Alternatively * constructor. By doing it this way we prevent a payable constructor from working. Alternatively
* we could use assembly to access msg.value. * we could use assembly to access msg.value.
*/ */
function HasNoEther() payable { constructor() payable {
if(msg.value > 0) { if(msg.value > 0) {
throw; throw;
} }

View File

@ -14,7 +14,7 @@ contract Ownable {
* @dev The Ownable constructor sets the original `owner` of the contract to the sender * @dev The Ownable constructor sets the original `owner` of the contract to the sender
* account. * account.
*/ */
function Ownable() { constructor() {
owner = msg.sender; owner = msg.sender;
} }

View File

@ -59,7 +59,7 @@ contract Shareable {
* @param _owners A list of owners. * @param _owners A list of owners.
* @param _required The amount required for a transaction to be approved. * @param _required The amount required for a transaction to be approved.
*/ */
function Shareable(address[] _owners, uint256 _required) { constructor(address[] _owners, uint256 _required) {
owners[1] = msg.sender; owners[1] = msg.sender;
ownerIndex[msg.sender] = 1; ownerIndex[msg.sender] = 1;
for (uint256 i = 0; i < _owners.length; ++i) { for (uint256 i = 0; i < _owners.length; ++i) {

View File

@ -20,7 +20,7 @@ contract SimpleToken is StandardToken {
/** /**
* @dev Contructor that gives msg.sender all of existing tokens. * @dev Contructor that gives msg.sender all of existing tokens.
*/ */
function SimpleToken() { constructor() {
totalSupply = INITIAL_SUPPLY; totalSupply = INITIAL_SUPPLY;
balances[msg.sender] = INITIAL_SUPPLY; balances[msg.sender] = INITIAL_SUPPLY;
} }

View File

@ -19,7 +19,7 @@ contract TokenTimelock {
// timestamp when token release is enabled // timestamp when token release is enabled
uint releaseTime; uint releaseTime;
function TokenTimelock(ERC20Basic _token, address _beneficiary, uint _releaseTime) { constructor(ERC20Basic _token, address _beneficiary, uint _releaseTime) {
require(_releaseTime > now); require(_releaseTime > now);
token = _token; token = _token;
beneficiary = _beneficiary; beneficiary = _beneficiary;