Skip to content
Merged
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
// XFAIL: *

// Tests that we correctly deduce the CV-quals and storage
// class of explicit object member functions.
//
// RUN: %clangxx_host %s -g -std=c++23 -c -o %t
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think you need -gdwarf to produce dwarf on windows. But maybe it's better to hardcode your favourite triple for reproducibility?

// RUN: %lldb %t -b -o "type lookup Foo" 2>&1 | FileCheck %s
//
// CHECK: (lldb) type lookup Foo
// CHECK-NEXT: struct Foo {
// CHECK-NEXT: void Method(Foo);
// CHECK-NEXT: void cMethod(Foo const&);
// CHECK-NEXT: void vMethod(Foo volatile&);
// CHECK-NEXT: void cvMethod(const Foo volatile&) const volatile;
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The representation here doesn't look right also. But that's a separate bug probably with the AST that LLDB creates

// CHECK-NEXT: }

struct Foo {
void Method(this Foo) {}
void cMethod(this Foo const &) {}
void vMethod(this Foo volatile &) {}
void cvMethod(this Foo const volatile &) {}
} f;