diff --git a/xo-alloc/utest/generation.test.cpp b/xo-alloc/utest/generation.test.cpp index 415d6258..edbebffa 100644 --- a/xo-alloc/utest/generation.test.cpp +++ b/xo-alloc/utest/generation.test.cpp @@ -4,6 +4,7 @@ */ #include "xo/alloc/generation.hpp" +#include #include #include diff --git a/xo-jit/utest/MachPipeline.test.cpp b/xo-jit/utest/MachPipeline.test.cpp index 433365f6..1466710b 100644 --- a/xo-jit/utest/MachPipeline.test.cpp +++ b/xo-jit/utest/MachPipeline.test.cpp @@ -7,6 +7,7 @@ #include "xo/reflect/reflect_struct.hpp" #include "xo/indentlog/scope.hpp" #include +#include namespace xo { using xo::jit::MachPipeline; @@ -24,19 +25,20 @@ namespace xo { using std::endl; namespace ut { + double (*sqrt_double)(double) = &std::sqrt; /* abstract syntax tree for a function: * def root4(x :: double) { sqrt(sqrt(x)); } */ rp root4_ast() { - auto sqrt = make_primitive("sqrt", - ::sqrt, - false /*!explicit_symbol_def*/, - llvmintrinsic::fp_sqrt); + auto sqrtx = make_primitive("sqrt", + sqrt_double, + false /*!explicit_symbol_def*/, + llvmintrinsic::fp_sqrt); auto x_var = make_var("x", Reflect::require()); - auto call1 = make_apply(sqrt, {x_var}); - auto call2 = make_apply(sqrt, {call1}); + auto call1 = make_apply(sqrtx, {x_var}); + auto call2 = make_apply(sqrtx, {call1}); auto fn_ast = make_lambda("root4", {x_var}, @@ -52,7 +54,7 @@ namespace xo { rp root_2x_ast() { auto root = make_primitive("sqrt", - ::sqrt, + sqrt_double, false /*!explicit_symbol_def*/, llvmintrinsic::fp_sqrt); @@ -202,7 +204,7 @@ namespace xo { auto jit = MachPipeline::make(); auto root = make_primitive("sqrt", - ::sqrt, + sqrt_double, false /*!explicit_symbol_def*/, llvmintrinsic::fp_sqrt); diff --git a/xo-reflectutil/include/xo/reflectutil/reflect_struct_info.hpp b/xo-reflectutil/include/xo/reflectutil/reflect_struct_info.hpp index 98313088..60c52392 100644 --- a/xo-reflectutil/include/xo/reflectutil/reflect_struct_info.hpp +++ b/xo-reflectutil/include/xo/reflectutil/reflect_struct_info.hpp @@ -6,6 +6,7 @@ #pragma once #include +#include namespace xo { namespace reflect {