clang 19.0.0git
Namespaces | Enumerations | Functions
Linkage.h File Reference

Defines the Linkage enumeration and various utility functions. More...

#include "llvm/Support/ErrorHandling.h"
#include <utility>

Go to the source code of this file.

Namespaces

namespace  clang
 The JSON file list parser is used to communicate input to InstallAPI.
 

Enumerations

enum class  clang::Linkage : unsigned char {
  clang::Invalid = 0 , clang::None , clang::Internal , clang::UniqueExternal ,
  clang::VisibleNone , clang::Module , clang::External
}
 Describes the different kinds of linkage (C++ [basic.link], C99 6.2.2) that an entity may have. More...
 
enum  clang::LanguageLinkage { clang::CLanguageLinkage , clang::CXXLanguageLinkage , clang::NoLanguageLinkage }
 Describes the different kinds of language linkage (C++ [dcl.link]) that an entity may have. More...
 
enum  clang::GVALinkage {
  clang::GVA_Internal , clang::GVA_AvailableExternally , clang::GVA_DiscardableODR , clang::GVA_StrongExternal ,
  clang::GVA_StrongODR
}
 A more specific kind of linkage than enum Linkage. More...
 

Functions

bool clang::isDiscardableGVALinkage (GVALinkage L)
 
bool clang::isUniqueGVALinkage (GVALinkage L)
 Do we know that this will be the only definition of this symbol (excluding inlining-only definitions)?
 
bool clang::isExternallyVisible (Linkage L)
 
Linkage clang::getFormalLinkage (Linkage L)
 
bool clang::isExternalFormalLinkage (Linkage L)
 
Linkage clang::minLinkage (Linkage L1, Linkage L2)
 Compute the minimum linkage given two linkages.
 

Detailed Description

Defines the Linkage enumeration and various utility functions.

Definition in file Linkage.h.