(root)/
gcc-13.2.0/
gcc/
testsuite/
g++.target/
mips/
cxx17_empty_base.C
// { dg-do compile }
// { dg-options "-O2 -std=c++17 -mabi=64 -mhard-float" }
// { dg-final { scan-assembler "\\\$f0" } }

struct empty {};

struct foo : empty
{
  double a;
  double b;
};

struct foo
make_foo(void) // { dg-message "the ABI for returning a value with C\\\+\\\+17 empty bases but otherwise an aggregate with only one or two floating-point fields was changed in GCC 12.1" }
{
  struct foo ret;
  ret.a = 114;
  ret.b = 514;
  return ret;
}