diff options
author | Duncan Sands <baldrick@free.fr> | 2009-03-11 08:08:06 +0000 |
---|---|---|
committer | Duncan Sands <baldrick@free.fr> | 2009-03-11 08:08:06 +0000 |
commit | 5f4ee1fc5d00ae55c30fa2ce450c69be4c6d6e63 (patch) | |
tree | 524f8864fae13a926989fb2edb5d72e0dc180dbe /docs | |
parent | 841c6a4345082e9a1252cc39bcce7f1423a76ded (diff) | |
download | external_llvm-5f4ee1fc5d00ae55c30fa2ce450c69be4c6d6e63.zip external_llvm-5f4ee1fc5d00ae55c30fa2ce450c69be4c6d6e63.tar.gz external_llvm-5f4ee1fc5d00ae55c30fa2ce450c69be4c6d6e63.tar.bz2 |
Remove the one-definition-rule version of extern_weak
linkage: this linkage type only applies to declarations,
but ODR is only relevant to globals with definitions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@66650 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'docs')
-rw-r--r-- | docs/LangRef.html | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/docs/LangRef.html b/docs/LangRef.html index 6b7038d..c698e8a 100644 --- a/docs/LangRef.html +++ b/docs/LangRef.html @@ -554,15 +554,13 @@ All Global Variables and Functions have one of the following types of linkage: <dt><tt><b><a name="linkage_linkonce">linkonce_odr</a></b></tt>: </dt> <dt><tt><b><a name="linkage_common">common_odr</a></b></tt>: </dt> <dt><tt><b><a name="linkage_weak">weak_odr</a></b></tt>: </dt> - <dt><tt><b><a name="linkage_externweak">extern_weak_odr</a></b></tt>: </dt> <dd>Some languages allow inequivalent globals to be merged, such as two functions with different semantics. Other languages, such as <tt>C++</tt>, ensure that only equivalent globals are ever merged (the "one definition rule" - <tt>odr</tt>). Such languages can use the <tt>linkonce_odr</tt>, - <tt>common_odr</tt>, <tt>weak_odr</tt> and <tt>extern_weak_odr</tt> linkage - types to indicate that the global will only be merged with equivalent - globals. These linkage types are otherwise the same as their - non-<tt>odr</tt> versions. + <tt>common_odr</tt> and <tt>weak_odr</tt> linkage types to indicate that + the global will only be merged with equivalent globals. These linkage + types are otherwise the same as their non-<tt>odr</tt> versions. </dd> <dt><tt><b><a name="linkage_external">externally visible</a></b></tt>:</dt> @@ -606,8 +604,8 @@ preventing a collision. Since "<tt>main</tt>" and "<tt>puts</tt>" are external (i.e., lacking any linkage declarations), they are accessible outside of the current module.</p> <p>It is illegal for a function <i>declaration</i> -to have any linkage type other than "externally visible", <tt>dllimport</tt>, -<tt>extern_weak</tt> or <tt>extern_weak_odr</tt>.</p> +to have any linkage type other than "externally visible", <tt>dllimport</tt> +or <tt>extern_weak</tt>.</p> <p>Aliases can have only <tt>external</tt>, <tt>internal</tt>, <tt>weak</tt> or <tt>weak_odr</tt> linkages.</p> </div> |