(root)/
gcc-13.2.0/
gcc/
testsuite/
g++.dg/
ubsan/
pr66977.C
// PR sanitizer/66977
// { dg-do compile }
// { dg-options "-fsanitize=shift -Wmaybe-uninitialized -O" }

class Foo {

private:

  int a_;

public:

  Foo (int a) : a_(a) {};

  inline int get_a () { return a_; };
};

int bar (int (Foo::*get)()) {
  Foo *A = new Foo(1);
  int result = (A->*get)();
  delete (A);
  return result;
}

int main () {
  return bar (&Foo::get_a);
}