xref: /llvm-project/libc/src/compiler/__stack_chk_fail.h (revision 24d44ff473c73891a4085c2cd777108d9d7bb50a)
1315a5cceSNick Desaulniers //===-- Internal header for __stack_chk_fail --------------------*- C++ -*-===//
2315a5cceSNick Desaulniers //
3315a5cceSNick Desaulniers // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4315a5cceSNick Desaulniers // See https://llvm.org/LICENSE.txt for license information.
5315a5cceSNick Desaulniers // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6315a5cceSNick Desaulniers //
7315a5cceSNick Desaulniers //===----------------------------------------------------------------------===//
8315a5cceSNick Desaulniers 
9315a5cceSNick Desaulniers #ifndef LLVM_LIBC_SRC_COMPILER___STACK_CHK_FAIL_H
10315a5cceSNick Desaulniers #define LLVM_LIBC_SRC_COMPILER___STACK_CHK_FAIL_H
11315a5cceSNick Desaulniers 
12*24d44ff4SNick Desaulniers // The compiler will emit calls implicitly to a non-namespaced version.
13*24d44ff4SNick Desaulniers // TODO: can we additionally provide a namespaced alias so that tests can
14*24d44ff4SNick Desaulniers // explicitly call the namespaced variant rather than the non-namespaced
15*24d44ff4SNick Desaulniers // definition?
16*24d44ff4SNick Desaulniers extern "C" {
17315a5cceSNick Desaulniers [[noreturn]] void __stack_chk_fail();
18*24d44ff4SNick Desaulniers } // extern "C"
19315a5cceSNick Desaulniers 
20315a5cceSNick Desaulniers #endif // LLVM_LIBC_SRC_COMPILER___STACK_CHK_FAIL_H
21