@@ -140,8 +140,8 @@ class JitCall {
140140 : m_DestructorCall(C), m_Kind(K), m_FD(Dtor) {}
141141
142142 // / Checks if the passed arguments are valid for the given function.
143- CPPINTEROP_API bool AreArgumentsValid (void * result, ArgList args,
144- void * self ) const ;
143+ CPPINTEROP_API bool AreArgumentsValid (void * result, ArgList args, void * self,
144+ size_t nary = 1UL ) const ;
145145
146146 // / This function is used for debugging, it reports when the function was
147147 // / called.
@@ -205,6 +205,7 @@ class JitCall {
205205 int withFree = true ) const {
206206 assert (m_Kind == kDestructorCall && " Wrong overload!" );
207207#ifndef NDEBUG
208+ assert (AreArgumentsValid (/* result*/ nullptr , /* args*/ {}, object, nary) && " Invalid args!" );
208209 ReportInvokeStart (object, nary, withFree);
209210#endif // NDEBUG
210211 m_DestructorCall (object, nary, withFree);
@@ -221,7 +222,7 @@ class JitCall {
221222 ArgList args = {}, void * is_arena = nullptr ) const {
222223 assert (m_Kind == kConstructorCall && " Wrong overload!" );
223224#ifndef NDEBUG
224- assert (AreArgumentsValid (result, args, nullptr , nary) && " Invalid args!" );
225+ assert (AreArgumentsValid (result, args, /* self= */ nullptr , nary) && " Invalid args!" );
225226 ReportInvokeStart (result, args, nullptr );
226227#endif // NDEBUG
227228 m_ConstructorCall (result, nary, args.m_ArgSize , args.m_Args , is_arena);
0 commit comments