summaryrefslogtreecommitdiff
path: root/clang/test/CodeGenCXX/ms-thunks-unprototyped-return.cpp
blob: ef39fd70607cd8592c70bdc478aaebdb31552ac3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// RUN: %clang_cc1 -fno-rtti-data -triple x86_64-windows-msvc -emit-llvm-only %s -verify

// Verify that we error out on this return adjusting thunk that we can't emit.

struct Incomplete;

struct A {
  virtual A * clone(Incomplete p) = 0;
};
struct B : virtual A {
  // expected-error@+1 2 {{cannot compile this return-adjusting thunk with incomplete parameter type yet}}
  B * clone(Incomplete p) override;
};
struct C : B { int c; };
C c;