1e8bcd4c8e5a867c52bef3837731e44b88eba6a36Reid Kleckner// RUN: %clang_cc1 -fsyntax-only -verify %s
2e8bcd4c8e5a867c52bef3837731e44b88eba6a36Reid Kleckner
3e8bcd4c8e5a867c52bef3837731e44b88eba6a36Reid Kleckner// Split from function-template-specialization.cpp because the noreturn warning
4e8bcd4c8e5a867c52bef3837731e44b88eba6a36Reid Kleckner// requires analysis-based warnings, which the other errors in that test case
5e8bcd4c8e5a867c52bef3837731e44b88eba6a36Reid Kleckner// disable.
6e8bcd4c8e5a867c52bef3837731e44b88eba6a36Reid Kleckner
7e8bcd4c8e5a867c52bef3837731e44b88eba6a36Reid Klecknertemplate <int N> void __attribute__((noreturn)) f3() { __builtin_unreachable(); }
8e8bcd4c8e5a867c52bef3837731e44b88eba6a36Reid Klecknertemplate <> void f3<1>() { } // expected-warning {{function declared 'noreturn' should not return}}
9