From 0e381e333ed14273138a5f57c4c60b7ca29c5ecd Mon Sep 17 00:00:00 2001 From: Jason Turner Date: Sat, 20 Sep 2014 08:31:18 -0600 Subject: [PATCH] Attempt to satisfy G++4.6 and decltype usage --- include/chaiscript/dispatchkit/operators.hpp | 8 ++++---- unittests/type_info_test.cpp | 3 +++ 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/include/chaiscript/dispatchkit/operators.hpp b/include/chaiscript/dispatchkit/operators.hpp index 4c2369f..562e3c0 100644 --- a/include/chaiscript/dispatchkit/operators.hpp +++ b/include/chaiscript/dispatchkit/operators.hpp @@ -19,13 +19,13 @@ namespace chaiscript namespace detail { template - auto assign(L l, R r) -> decltype((l = r)) + auto assign(L l, R r) -> decltype((l = r)) { return (l = r); } template - auto assign_bitwise_and(L l, R r) -> decltype((l &r)) + auto assign_bitwise_and(L l, R r) -> decltype((l &= r)) { return (l &= r); } @@ -229,7 +229,7 @@ namespace chaiscript template ModulePtr assign(ModulePtr m = ModulePtr(new Module())) { - m->add(chaiscript::fun(&detail::assign), "="); + m->add(chaiscript::fun(static_cast(&detail::assign)), "="); return m; } @@ -299,7 +299,7 @@ namespace chaiscript template ModulePtr assign_sum(ModulePtr m = ModulePtr(new Module())) { - m->add(chaiscript::fun(&detail::assign_sum), "+="); + m->add(chaiscript::fun(static_cast(&detail::assign_sum)), "+="); return m; } diff --git a/unittests/type_info_test.cpp b/unittests/type_info_test.cpp index 56f2681..e41f111 100644 --- a/unittests/type_info_test.cpp +++ b/unittests/type_info_test.cpp @@ -2,6 +2,7 @@ #include #include +#include #include void test_type(const chaiscript::Type_Info &ti, bool t_is_const, bool t_is_pointer, bool t_is_reference, bool t_is_void, @@ -30,5 +31,7 @@ int main() test_type(chaiscript::user_type(), true, true, false, false, false); test_type(chaiscript::Type_Info(), false, false, false, false, true); + std::cout << "Size of Type_Info " << sizeof(chaiscript::Type_Info) << std::endl; + return EXIT_SUCCESS; }