mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
Windows build coersions.
This commit is contained in:
parent
6731576311
commit
f4c99cdbb9
@ -7,7 +7,11 @@ aux_source_directory(. SRC_LIST)
|
|||||||
set(EXECUTABLE lll)
|
set(EXECUTABLE lll)
|
||||||
|
|
||||||
# set(CMAKE_INSTALL_PREFIX ../lib)
|
# set(CMAKE_INSTALL_PREFIX ../lib)
|
||||||
add_library(${EXECUTABLE} SHARED ${SRC_LIST})
|
if(ETH_STATIC)
|
||||||
|
add_library(${EXECUTABLE} STATIC ${SRC_LIST})
|
||||||
|
else()
|
||||||
|
add_library(${EXECUTABLE} SHARED ${SRC_LIST})
|
||||||
|
endif()
|
||||||
|
|
||||||
file(GLOB HEADERS "*.h")
|
file(GLOB HEADERS "*.h")
|
||||||
|
|
||||||
@ -15,7 +19,6 @@ include_directories(..)
|
|||||||
|
|
||||||
target_link_libraries(${EXECUTABLE} evmface)
|
target_link_libraries(${EXECUTABLE} evmface)
|
||||||
target_link_libraries(${EXECUTABLE} ethential)
|
target_link_libraries(${EXECUTABLE} ethential)
|
||||||
target_link_libraries(${EXECUTABLE} gmp)
|
|
||||||
|
|
||||||
|
|
||||||
if(${TARGET_PLATFORM} STREQUAL "w64")
|
if(${TARGET_PLATFORM} STREQUAL "w64")
|
||||||
|
@ -84,7 +84,11 @@ std::string eth::compileLLLToAsm(std::string const& _src, bool _opt, std::vector
|
|||||||
string eth::parseLLL(string const& _src)
|
string eth::parseLLL(string const& _src)
|
||||||
{
|
{
|
||||||
sp::utree o;
|
sp::utree o;
|
||||||
parseTreeLLL(_src, o);
|
try
|
||||||
|
{
|
||||||
|
parseTreeLLL(_src, o);
|
||||||
|
}
|
||||||
|
catch (...) {}
|
||||||
ostringstream ret;
|
ostringstream ret;
|
||||||
debugOutAST(ret, o);
|
debugOutAST(ret, o);
|
||||||
killBigints(o);
|
killBigints(o);
|
||||||
|
13
Parser.cpp
13
Parser.cpp
@ -21,6 +21,8 @@
|
|||||||
|
|
||||||
#include "Parser.h"
|
#include "Parser.h"
|
||||||
|
|
||||||
|
#define BOOST_RESULT_OF_USE_DECLTYPE
|
||||||
|
#define BOOST_SPIRIT_USE_PHOENIX_V3
|
||||||
#include <boost/spirit/include/qi.hpp>
|
#include <boost/spirit/include/qi.hpp>
|
||||||
#include <boost/spirit/include/phoenix.hpp>
|
#include <boost/spirit/include/phoenix.hpp>
|
||||||
#include <boost/spirit/include/support_utree.hpp>
|
#include <boost/spirit/include/support_utree.hpp>
|
||||||
@ -93,12 +95,13 @@ void eth::parseTreeLLL(string const& _s, sp::utree& o_out)
|
|||||||
qi::rule<it, qi::ascii::space_type, sp::utree::list_type()> list = '(' > *element > ')';
|
qi::rule<it, qi::ascii::space_type, sp::utree::list_type()> list = '(' > *element > ')';
|
||||||
|
|
||||||
// todo: fix compound compile errors in this line for Visual Studio 2013
|
// todo: fix compound compile errors in this line for Visual Studio 2013
|
||||||
#ifndef _MSC_VER
|
//#ifndef _MSC_VER
|
||||||
qi::rule<it, qi::ascii::space_type, sp::utree()> extra = sload[qi::_val = qi::_1, bind(&sp::utree::tag, qi::_val, 2)] | mload[qi::_val = qi::_1, bind(&sp::utree::tag, qi::_val, 1)] | sstore[qi::_val = qi::_1, bind(&sp::utree::tag, qi::_val, 4)] | mstore[qi::_val = qi::_1, bind(&sp::utree::tag, qi::_val, 3)] | seq[qi::_val = qi::_1, bind(&sp::utree::tag, qi::_val, 5)];
|
auto x = [](int a) { return [=](sp::utree& n, typename qi::rule<it, qi::ascii::space_type, sp::utree()>::context_type& c) { (boost::fusion::at_c<0>(c.attributes) = n).tag(a); }; };
|
||||||
|
qi::rule<it, qi::ascii::space_type, sp::utree()> extra = mload[x(1)] | sload[x(2)] | mstore[x(3)] | sstore[x(4)] | seq[x(5)];
|
||||||
element = atom | list | extra;
|
element = atom | list | extra;
|
||||||
#else
|
/*#else
|
||||||
element = atom | list/* | extra*/;
|
element = atom | list;
|
||||||
#endif
|
#endif*/
|
||||||
|
|
||||||
|
|
||||||
string s;
|
string s;
|
||||||
|
Loading…
Reference in New Issue
Block a user