c2d68f0c0dc3f1df304326c988baa61855eb09d2
[platform/upstream/llvm.git] / flang / include / flang / Runtime / entry-names.h
1 /*===-- include/flang/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
10 /* Defines the macro RTNAME(n) which decorates the external name of a runtime
11  * library function or object with extra characters so that it
12  * (a) is not in the user's name space,
13  * (b) doesn't conflict with other libraries, and
14  * (c) prevents incompatible versions of the runtime library from linking
15  *
16  * The value of REVISION should not be changed until/unless the API to the
17  * runtime library must change in some way that breaks backward compatibility.
18  */
19 #ifndef RTNAME
20 #define NAME_WITH_PREFIX_AND_REVISION(prefix, revision, name) \
21   prefix##revision##name
22 #define RTNAME(name) NAME_WITH_PREFIX_AND_REVISION(_Fortran, A, name)
23 #endif