diff options
-rw-r--r-- | docs/LangRef.rst | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/docs/LangRef.rst b/docs/LangRef.rst index 434bcbe665..ee95cb9f85 100644 --- a/docs/LangRef.rst +++ b/docs/LangRef.rst @@ -519,12 +519,14 @@ Global Variables Global variables define regions of memory allocated at compilation time instead of run-time. -Global variables definitions must be initialized, may have an explicit section -to be placed in, and may have an optional explicit alignment specified. +Global variables definitions must be initialized. Global variables in other translation units can also be declared, in which case they don't have an initializer. +Either global variable definitions or declarations may have an explicit section +to be placed in and may have an optional explicit alignment specified. + A variable may be defined as a global ``constant``, which indicates that the contents of the variable will **never** be modified (enabling better optimization, allowing the global data to be placed in the read-only @@ -589,8 +591,8 @@ Syntax:: [@<GlobalVarName> =] [Linkage] [Visibility] [DLLStorageClass] [ThreadLocal] [unnamed_addr] [AddrSpace] [ExternallyInitialized] - <global | constant> <Type> [<InitializerConstant> - [, section "name"] [, align <Alignment>]] + <global | constant> <Type> [<InitializerConstant>] + [, section "name"] [, align <Alignment>] For example, the following defines a global in a numbered address space with an initializer, section, and alignment: |