diff options
author | chriseth <c@ethdev.com> | 2015-08-05 23:19:19 +0800 |
---|---|---|
committer | chriseth <c@ethdev.com> | 2015-08-05 23:19:19 +0800 |
commit | fbe4ce37a0df8f19ecc8978e1bf65a867bdf6492 (patch) | |
tree | 2476cf03244e54e9ad78cd6fded0cdfbe34a7b12 /libsolidity/SolidityNameAndTypeResolution.cpp | |
parent | 68fb371956aaeefdd0f72bfd3f464dd3f709f167 (diff) | |
parent | 45e6d94078816984dfdf9a35293502dd3d482fec (diff) | |
download | dexon-solidity-fbe4ce37a0df8f19ecc8978e1bf65a867bdf6492.tar.gz dexon-solidity-fbe4ce37a0df8f19ecc8978e1bf65a867bdf6492.tar.zst dexon-solidity-fbe4ce37a0df8f19ecc8978e1bf65a867bdf6492.zip |
Merge pull request #2688 from chriseth/toBytesConversion
Allow explicit conversions bytes <-> string.
Diffstat (limited to 'libsolidity/SolidityNameAndTypeResolution.cpp')
-rw-r--r-- | libsolidity/SolidityNameAndTypeResolution.cpp | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/libsolidity/SolidityNameAndTypeResolution.cpp b/libsolidity/SolidityNameAndTypeResolution.cpp index cfc43df9..6b116f25 100644 --- a/libsolidity/SolidityNameAndTypeResolution.cpp +++ b/libsolidity/SolidityNameAndTypeResolution.cpp @@ -2149,6 +2149,23 @@ BOOST_AUTO_TEST_CASE(memory_structs_with_mappings) BOOST_CHECK_THROW(parseTextAndResolveNames(text), TypeError); } +BOOST_AUTO_TEST_CASE(string_bytes_conversion) +{ + char const* text = R"( + contract Test { + string s; + bytes b; + function h(string _s) external { bytes(_s).length; } + function i(string _s) internal { bytes(_s).length; } + function j() internal { bytes(s).length; } + function k(bytes _b) external { string(_b); } + function l(bytes _b) internal { string(_b); } + function m() internal { string(b); } + } + )"; + BOOST_CHECK_NO_THROW(parseTextAndResolveNames(text)); +} + BOOST_AUTO_TEST_SUITE_END() } |