aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity/codegen/CompilerContext.h
diff options
context:
space:
mode:
authorchriseth <chris@ethereum.org>2018-10-17 23:05:49 +0800
committerGitHub <noreply@github.com>2018-10-17 23:05:49 +0800
commitf2f72ff7eea9a461ae8c71a13428e499c8b91025 (patch)
tree02c46d9f13ff85b5a2ad3d124054bdfc71af4791 /libsolidity/codegen/CompilerContext.h
parent6b7d182658988f22ba23cc3852510864881515e2 (diff)
parent16c2a775fd532c301eae3abecc8d68c5c421a9a0 (diff)
downloaddexon-solidity-f2f72ff7eea9a461ae8c71a13428e499c8b91025.tar
dexon-solidity-f2f72ff7eea9a461ae8c71a13428e499c8b91025.tar.gz
dexon-solidity-f2f72ff7eea9a461ae8c71a13428e499c8b91025.tar.bz2
dexon-solidity-f2f72ff7eea9a461ae8c71a13428e499c8b91025.tar.lz
dexon-solidity-f2f72ff7eea9a461ae8c71a13428e499c8b91025.tar.xz
dexon-solidity-f2f72ff7eea9a461ae8c71a13428e499c8b91025.tar.zst
dexon-solidity-f2f72ff7eea9a461ae8c71a13428e499c8b91025.zip
Merge pull request #5227 from ethereum/doNotRemoveExternallyUsedFunction
Prevent externally used functions from being removed.
Diffstat (limited to 'libsolidity/codegen/CompilerContext.h')
-rw-r--r--libsolidity/codegen/CompilerContext.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/libsolidity/codegen/CompilerContext.h b/libsolidity/codegen/CompilerContext.h
index 3f357821..5bdc1d19 100644
--- a/libsolidity/codegen/CompilerContext.h
+++ b/libsolidity/codegen/CompilerContext.h
@@ -206,10 +206,12 @@ public:
/// Appends inline assembly (strict mode).
/// @a _replacements are string-matching replacements that are performed prior to parsing the inline assembly.
/// @param _localVariables assigns stack positions to variables with the last one being the stack top
+ /// @param _externallyUsedFunctions a set of function names that are not to be renamed or removed.
/// @param _system if true, this is a "system-level" assembly where all functions use named labels.
void appendInlineAssembly(
std::string const& _assembly,
std::vector<std::string> const& _localVariables = std::vector<std::string>(),
+ std::set<std::string> const& _externallyUsedFunctions = std::set<std::string>(),
bool _system = false
);