xref: /llvm-project/clang/test/CXX/expr/expr.post/expr.static.cast/p7.cpp (revision 1be59c510612d911352ffc2ca06ab344e21eea4e)
1*1be59c51SRichard Smith // RUN: %clang_cc1 -std=c++1z -verify %s -fcxx-exceptions
2*1be59c51SRichard Smith 
3*1be59c51SRichard Smith void (*p)() noexcept;
4*1be59c51SRichard Smith void (*q)();
5*1be59c51SRichard Smith 
f()6*1be59c51SRichard Smith void f() {
7*1be59c51SRichard Smith   // FIXME: This seems like a bad rule.
8*1be59c51SRichard Smith   p = static_cast<decltype(p)>(q); // expected-error {{not allowed}}
9*1be59c51SRichard Smith   q = static_cast<decltype(q)>(p);
10*1be59c51SRichard Smith }
11