1*c555a123SIgor Zhukov //===----------------------------------------------------------------------===// 2*c555a123SIgor Zhukov // 3*c555a123SIgor Zhukov // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4*c555a123SIgor Zhukov // See https://llvm.org/LICENSE.txt for license information. 5*c555a123SIgor Zhukov // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6*c555a123SIgor Zhukov // 7*c555a123SIgor Zhukov //===----------------------------------------------------------------------===// 8*c555a123SIgor Zhukov 9*c555a123SIgor Zhukov // <utility> 10*c555a123SIgor Zhukov 11*c555a123SIgor Zhukov // template <class T> typename add_rvalue_reference<T>::type declval() noexcept; 12*c555a123SIgor Zhukov 13*c555a123SIgor Zhukov #include <utility> 14*c555a123SIgor Zhukov 15*c555a123SIgor Zhukov int x = std::declval< 16*c555a123SIgor Zhukov int>(); // expected-error-re@*:* {{static assertion failed{{.*}}std::declval can only be used in an unevaluated context.}} 17