diff options
author | Christian <c@ethdev.com> | 2015-01-26 17:20:46 +0800 |
---|---|---|
committer | Christian <c@ethdev.com> | 2015-01-26 17:20:46 +0800 |
commit | 682a45290c5d40651af096a84fba6ffc570e7e59 (patch) | |
tree | 403e34909a2a2366af335004503d2844446db99b | |
parent | 99b31eab898119f8feb8238e0792c5826c662ad5 (diff) | |
download | dexon-solidity-682a45290c5d40651af096a84fba6ffc570e7e59.tar dexon-solidity-682a45290c5d40651af096a84fba6ffc570e7e59.tar.gz dexon-solidity-682a45290c5d40651af096a84fba6ffc570e7e59.tar.bz2 dexon-solidity-682a45290c5d40651af096a84fba6ffc570e7e59.tar.lz dexon-solidity-682a45290c5d40651af096a84fba6ffc570e7e59.tar.xz dexon-solidity-682a45290c5d40651af096a84fba6ffc570e7e59.tar.zst dexon-solidity-682a45290c5d40651af096a84fba6ffc570e7e59.zip |
Reverse order of inheritance in base list.
-rw-r--r-- | SolidityEndToEndTest.cpp | 4 | ||||
-rw-r--r-- | SolidityNameAndTypeResolution.cpp | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/SolidityEndToEndTest.cpp b/SolidityEndToEndTest.cpp index cf04edaa..80e9aed4 100644 --- a/SolidityEndToEndTest.cpp +++ b/SolidityEndToEndTest.cpp @@ -1545,7 +1545,7 @@ BOOST_AUTO_TEST_CASE(single_copy_with_multiple_inheritance) } contract A is Base { function setViaA(uint i) { setData(i); } } contract B is Base { function getViaB() returns (uint i) { return getViaBase(); } } - contract Derived is A, B, Base { } + contract Derived is Base, B, A { } )"; compileAndRun(sourceCode, 0, "Derived"); BOOST_CHECK(callContractFunction("getViaB()") == encodeArgs(0)); @@ -1642,7 +1642,7 @@ BOOST_AUTO_TEST_CASE(constructor_argument_overriding) } } contract Base is BaseBase(2) { } - contract Derived is Base, BaseBase(3) { + contract Derived is BaseBase(3), Base { function getA() returns (uint r) { return m_a; } } )"; diff --git a/SolidityNameAndTypeResolution.cpp b/SolidityNameAndTypeResolution.cpp index 6c8fd1b1..079da0a1 100644 --- a/SolidityNameAndTypeResolution.cpp +++ b/SolidityNameAndTypeResolution.cpp @@ -386,7 +386,7 @@ BOOST_AUTO_TEST_CASE(inheritance_diamond_basic) contract root { function rootFunction() {} } contract inter1 is root { function f() {} } contract inter2 is root { function f() {} } - contract derived is inter1, inter2, root { + contract derived is root, inter2, inter1 { function g() { f(); rootFunction(); } } )"; |