1 // { dg-do assemble  }
2 // Test that failed lvalue-to-rvalue conversion of vf doesn't crash the
3 // compiler.
4 
5 class f_class		       // { dg-message "note" "candidates" }
6 { };
7 
8 volatile f_class
ret_v_f_class()9 ret_v_f_class()
10 {
11   f_class t;
12   return t;
13 }
14 
main(void)15 int main(void)
16 {
17   volatile f_class vf;
18   0 ? ret_v_f_class() : vf;	// { dg-error "volatile" } can't copy volatile lvalue
19   return 0;
20 }
21