blob: e2581ca33c9d5613654988e49e588adcf6c9b992 [file] [log] [blame]
//===-- runtime/entry-names.h -----------------------------------*- C++ -*-===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
// Defines the macro RTNAME(n) which decorates the external name of a runtime
// library function or object with extra characters so that it
// (a) is not in the user's name space,
// (b) doesn't conflict with other libraries, and
// (c) prevents incompatible versions of the runtime library from linking
//
// The value of REVISION should not be changed until/unless the API to the
// runtime library must change in some way that breaks backward compatibility.
#ifndef RTNAME
#define NAME_WITH_PREFIX_AND_REVISION(prefix, revision, name) \
prefix##revision##name
#define RTNAME(name) NAME_WITH_PREFIX_AND_REVISION(_Fortran, A, name)
#endif