From 7bf9526f5edacd91602b9b9b07247e7a7b46fcc2 Mon Sep 17 00:00:00 2001 From: Alex Beregszaszi Date: Wed, 8 Aug 2018 13:23:23 +0100 Subject: Mark libsolc external C functions as noexcept These are part of the external C API where leaking through exceptions makes no sense. --- libsolc/libsolc.cpp | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) (limited to 'libsolc/libsolc.cpp') diff --git a/libsolc/libsolc.cpp b/libsolc/libsolc.cpp index 26ce98ce..6931ed08 100644 --- a/libsolc/libsolc.cpp +++ b/libsolc/libsolc.cpp @@ -270,46 +270,46 @@ static string s_outputBuffer; extern "C" { -extern char const* license() +extern char const* license() noexcept { static string fullLicenseText = otherLicenses + licenseText; return fullLicenseText.c_str(); } -extern char const* version() +extern char const* version() noexcept { return VersionString.c_str(); } -extern char const* compileJSON(char const* _input, bool _optimize) +extern char const* compileJSON(char const* _input, bool _optimize) noexcept { s_outputBuffer = compileSingle(_input, _optimize); return s_outputBuffer.c_str(); } -extern char const* compileJSONMulti(char const* _input, bool _optimize) +extern char const* compileJSONMulti(char const* _input, bool _optimize) noexcept { s_outputBuffer = compileMulti(_input, _optimize); return s_outputBuffer.c_str(); } -extern char const* compileJSONCallback(char const* _input, bool _optimize, CStyleReadFileCallback _readCallback) +extern char const* compileJSONCallback(char const* _input, bool _optimize, CStyleReadFileCallback _readCallback) noexcept { s_outputBuffer = compileMulti(_input, _optimize, _readCallback); return s_outputBuffer.c_str(); } -extern char const* compileStandard(char const* _input, CStyleReadFileCallback _readCallback) +extern char const* compileStandard(char const* _input, CStyleReadFileCallback _readCallback) noexcept { s_outputBuffer = compileStandardInternal(_input, _readCallback); return s_outputBuffer.c_str(); } -extern char const* solidity_license() +extern char const* solidity_license() noexcept { /// todo: make this the default or an alias return license(); } -extern char const* solidity_version() +extern char const* solidity_version() noexcept { /// todo: make this the default or an alias return version(); } -extern char const* solidity_compile(char const* _input, CStyleReadFileCallback _readCallback) +extern char const* solidity_compile(char const* _input, CStyleReadFileCallback _readCallback) noexcept { /// todo: make this the default or an alias return compileStandard(_input, _readCallback); -- cgit v1.2.3