Skip to content

Commit 5b310a1

Browse files
committed
[clang][Interp] Ignore lambda static invoker frames in backtraces
See comment. No test but this is neccessary for a later commit.
1 parent 49d53a2 commit 5b310a1

File tree

1 file changed

+3
-1
lines changed

1 file changed

+3
-1
lines changed

clang/lib/AST/Interp/InterpFrame.cpp

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,9 @@ void InterpFrame::describe(llvm::raw_ostream &OS) const {
158158
// diagnose them. The 'in call to' diagnostics for them add no value to the
159159
// user _and_ it doesn't generally work since the argument types don't always
160160
// match the function prototype. Just ignore them.
161-
if (const auto *F = getFunction(); F && F->isBuiltin())
161+
// Similarly, for lambda static invokers, we would just print __invoke().
162+
if (const auto *F = getFunction();
163+
F && (F->isBuiltin() || F->isLambdaStaticInvoker()))
162164
return;
163165

164166
const FunctionDecl *F = getCallee();

0 commit comments

Comments
 (0)