diff options
author | Alex Beregszaszi <alex@rtfs.hu> | 2017-01-25 20:45:18 +0800 |
---|---|---|
committer | Alex Beregszaszi <alex@rtfs.hu> | 2017-01-26 21:24:59 +0800 |
commit | 84bf547f21669fd89e2455463cbb43d965450d1e (patch) | |
tree | ae0e18fba3a9bc9c975833f941029243f94fd509 | |
parent | fcf483ee6b284f7e6d6f3c7f593cd95fb298da0d (diff) | |
download | dexon-solidity-84bf547f21669fd89e2455463cbb43d965450d1e.tar.gz dexon-solidity-84bf547f21669fd89e2455463cbb43d965450d1e.tar.zst dexon-solidity-84bf547f21669fd89e2455463cbb43d965450d1e.zip |
Add option to solc to use literal sources in metadta
-rw-r--r-- | solc/CommandLineInterface.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/solc/CommandLineInterface.cpp b/solc/CommandLineInterface.cpp index e49e8517..d33b87a8 100644 --- a/solc/CommandLineInterface.cpp +++ b/solc/CommandLineInterface.cpp @@ -98,6 +98,7 @@ static string const g_strSrcMap = "srcmap"; static string const g_strSrcMapRuntime = "srcmap-runtime"; static string const g_strVersion = "version"; static string const g_stdinFileNameStr = "<stdin>"; +static string const g_strMetadataLiteral = "metadata-literal"; static string const g_argAbi = g_strAbi; static string const g_argAddStandard = g_strAddStandard; @@ -126,6 +127,7 @@ static string const g_argOutputDir = g_strOutputDir; static string const g_argSignatureHashes = g_strSignatureHashes; static string const g_argVersion = g_strVersion; static string const g_stdinFileName = g_stdinFileNameStr; +static string const g_argMetadataLiteral = g_strMetadataLiteral; /// Possible arguments to for --combined-json static set<string> const g_combinedJsonArgs{ @@ -511,7 +513,8 @@ Allowed options)", g_argLink.c_str(), "Switch to linker mode, ignoring all options apart from --libraries " "and modify binaries in place." - ); + ) + (g_argMetadataLiteral.c_str(), "Store referenced sources are literal data in the metadata output."); po::options_description outputComponents("Output Components"); outputComponents.add_options() (g_argAst.c_str(), "AST of all source files.") @@ -634,6 +637,8 @@ bool CommandLineInterface::processInput() auto scannerFromSourceName = [&](string const& _sourceName) -> solidity::Scanner const& { return m_compiler->scanner(_sourceName); }; try { + if (m_args.count(g_argMetadataLiteral) > 0) + m_compiler->useMetadataLiteralSources(true); if (m_args.count(g_argInputFile)) m_compiler->setRemappings(m_args[g_argInputFile].as<vector<string>>()); for (auto const& sourceCode: m_sourceCodes) |