diff --git a/include/cubescript/cubescript.hh b/include/cubescript/cubescript.hh index 832b695..ac3dea3 100644 --- a/include/cubescript/cubescript.hh +++ b/include/cubescript/cubescript.hh @@ -15,7 +15,6 @@ #include #include #include -#include #include namespace cscript { diff --git a/src/cs_vm.cc b/src/cs_vm.cc index d00a375..5a44459 100644 --- a/src/cs_vm.cc +++ b/src/cs_vm.cc @@ -2,6 +2,7 @@ #include "cs_vm.hh" #include "cs_util.hh" +#include #include namespace cscript { @@ -1644,7 +1645,9 @@ void cs_state::run(cs_ident *id, cs_value_r args, cs_value &ret) { case cs_ident_type::Command: if (nargs < static_cast(id)->get_num_args()) { cs_valarray buf{*this}; - memcpy(&buf[0], &args[0], args.size() * sizeof(cs_value)); + for (std::size_t i = 0; i < args.size(); ++i) { + buf[i] = args[i]; + } callcommand( *this, static_cast(id), &buf[0], ret, nargs, false