[clang] [clang][repl] fix `new` on Mac M1 (PR #69072)

Vassil Vassilev via cfe-commits cfe-commits at lists.llvm.org
Thu Oct 19 23:24:12 PDT 2023


================
@@ -257,14 +256,9 @@ const char *const Runtimes = R"(
     void __clang_Interpreter_SetValueNoAlloc(void*, void*, void*, long double);
     void __clang_Interpreter_SetValueNoAlloc(void*,void*,void*,unsigned long long);
     template <class T, class = T (*)() /*disable for arrays*/>
-    void __clang_Interpreter_SetValueCopyArr(T* Src, void* Placement, unsigned long Size) {
----------------
vgvassilev wrote:

We can’t outline templates because we are introducing an odr violation. We should move `new` behind a new non-templates operation which we can forward declare and use within the template. 

https://github.com/llvm/llvm-project/pull/69072


More information about the cfe-commits mailing list