• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 //===-- runtime/entry-names.h -----------------------------------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 // Defines the macro RTNAME(n) which decorates the external name of a runtime
10 // library function or object with extra characters so that it
11 // (a) is not in the user's name space,
12 // (b) doesn't conflict with other libraries, and
13 // (c) prevents incompatible versions of the runtime library from linking
14 //
15 // The value of REVISION should not be changed until/unless the API to the
16 // runtime library must change in some way that breaks backward compatibility.
17 
18 #ifndef RTNAME
19 #define NAME_WITH_PREFIX_AND_REVISION(prefix, revision, name) \
20   prefix##revision##name
21 #define RTNAME(name) NAME_WITH_PREFIX_AND_REVISION(_Fortran, A, name)
22 #endif
23