aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian <c@ethdev.com>2015-01-26 17:20:46 +0800
committerChristian <c@ethdev.com>2015-01-26 17:20:46 +0800
commit682a45290c5d40651af096a84fba6ffc570e7e59 (patch)
tree403e34909a2a2366af335004503d2844446db99b
parent99b31eab898119f8feb8238e0792c5826c662ad5 (diff)
downloaddexon-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.cpp4
-rw-r--r--SolidityNameAndTypeResolution.cpp2
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(); }
}
)";