diff options
author | chriseth <c@ethdev.com> | 2016-11-21 18:42:38 +0800 |
---|---|---|
committer | chriseth <c@ethdev.com> | 2016-11-21 18:42:38 +0800 |
commit | b318366e6f16ed6a4274247d09badac4affff8d5 (patch) | |
tree | ef8dac7fe9285c1bc0b24ad042a3cda5565a661d /solc/jsonCompiler.cpp | |
parent | 4633f3def897db0f91237f98cf46e5d84fb05e61 (diff) | |
parent | 5ebd31ce2d7447917740088eaa22c8c62c453a94 (diff) | |
download | dexon-solidity-b318366e6f16ed6a4274247d09badac4affff8d5.tar dexon-solidity-b318366e6f16ed6a4274247d09badac4affff8d5.tar.gz dexon-solidity-b318366e6f16ed6a4274247d09badac4affff8d5.tar.bz2 dexon-solidity-b318366e6f16ed6a4274247d09badac4affff8d5.tar.lz dexon-solidity-b318366e6f16ed6a4274247d09badac4affff8d5.tar.xz dexon-solidity-b318366e6f16ed6a4274247d09badac4affff8d5.tar.zst dexon-solidity-b318366e6f16ed6a4274247d09badac4affff8d5.zip |
Merge remote-tracking branch 'origin/develop' into release
Diffstat (limited to 'solc/jsonCompiler.cpp')
-rw-r--r-- | solc/jsonCompiler.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/solc/jsonCompiler.cpp b/solc/jsonCompiler.cpp index ef69105e..771f0df8 100644 --- a/solc/jsonCompiler.cpp +++ b/solc/jsonCompiler.cpp @@ -27,6 +27,7 @@ #include <libdevcore/Common.h> #include <libdevcore/CommonData.h> #include <libdevcore/CommonIO.h> +#include <libdevcore/JSON.h> #include <libevmasm/Instruction.h> #include <libevmasm/GasMeter.h> #include <libsolidity/parsing/Scanner.h> @@ -189,6 +190,10 @@ string compile(StringMap const& _sources, bool _optimize, CStyleReadFileCallback { errors.append(formatError(exception, "Internal compiler error", scannerFromSourceName)); } + catch (UnimplementedFeatureError const& exception) + { + errors.append(formatError(exception, "Unimplemented feature", scannerFromSourceName)); + } catch (Exception const& exception) { errors.append("Exception during compilation: " + boost::diagnostic_information(exception)); @@ -209,7 +214,7 @@ string compile(StringMap const& _sources, bool _optimize, CStyleReadFileCallback for (string const& contractName: compiler.contractNames()) { Json::Value contractData(Json::objectValue); - contractData["interface"] = compiler.interface(contractName); + contractData["interface"] = dev::jsonCompactPrint(compiler.interface(contractName)); contractData["bytecode"] = compiler.object(contractName).toHex(); contractData["runtimeBytecode"] = compiler.runtimeObject(contractName).toHex(); contractData["opcodes"] = solidity::disassemble(compiler.object(contractName).bytecode); @@ -270,7 +275,7 @@ string compile(StringMap const& _sources, bool _optimize, CStyleReadFileCallback try { - return Json::FastWriter().write(output); + return dev::jsonCompactPrint(output); } catch (...) { @@ -288,7 +293,7 @@ string compileMulti(string const& _input, bool _optimize, CStyleReadFileCallback errors.append("Error parsing input JSON: " + reader.getFormattedErrorMessages()); Json::Value output(Json::objectValue); output["errors"] = errors; - return Json::FastWriter().write(output); + return dev::jsonCompactPrint(output); } else { |