diff --git a/executorch-sys/cpp/executorch_rs_ext/api_utils.cpp b/executorch-sys/cpp/executorch_rs_ext/api_utils.cpp index c06635a..479c1e0 100644 --- a/executorch-sys/cpp/executorch_rs_ext/api_utils.cpp +++ b/executorch-sys/cpp/executorch_rs_ext/api_utils.cpp @@ -39,10 +39,7 @@ namespace executorch_rs // static_assert(offsetof(Result_i64, hasValue_) == offsetof(torch::executor::Result, hasValue_), "Result_i64 hasValue_ offset mismatch"); Result_i64 crate_Result_i64(const torch::executor::Result &result) { - Result_i64 result2{ - .error_ = torch::executor::Error::Ok, - .hasValue_ = false, - }; + Result_i64 result2; memcpy(&result2, &result, sizeof(Result_i64)); return result2; } @@ -53,10 +50,7 @@ namespace executorch_rs // static_assert(offsetof(Result_MethodMeta, hasValue_) == offsetof(torch::executor::Result, hasValue_), "Result_MethodMeta hasValue_ offset mismatch"); Result_MethodMeta crate_Result_MethodMeta(const torch::executor::Result &result) { - Result_MethodMeta result2{ - .error_ = torch::executor::Error::Ok, - .hasValue_ = false, - }; + Result_MethodMeta result2; memcpy(&result2, &result, sizeof(Result_MethodMeta)); return result2; } diff --git a/executorch-sys/cpp/executorch_rs_ext/api_utils.hpp b/executorch-sys/cpp/executorch_rs_ext/api_utils.hpp index 5ed6384..be06b96 100644 --- a/executorch-sys/cpp/executorch_rs_ext/api_utils.hpp +++ b/executorch-sys/cpp/executorch_rs_ext/api_utils.hpp @@ -56,6 +56,11 @@ namespace executorch_rs /// True if the Result contains a value. const bool hasValue_; + + Result_i64() : error_(torch::executor::Error::Ok), hasValue_(false) {} + Result_i64(const Result_i64 &) = default; + Result_i64 &operator=(const Result_i64 &) = default; + ~Result_i64() = default; }; struct Result_MethodMeta { @@ -68,6 +73,11 @@ namespace executorch_rs /// True if the Result contains a value. const bool hasValue_; + + Result_MethodMeta() : error_(torch::executor::Error::Ok), hasValue_(false) {} + Result_MethodMeta(const Result_MethodMeta &) = default; + Result_MethodMeta &operator=(const Result_MethodMeta &) = default; + ~Result_MethodMeta() = default; }; Result_MethodMeta Program_method_meta(const torch::executor::Program *self, const char *method_name);