diff --git a/docs/LangRef.html b/docs/LangRef.html index 0d19f0af02d..6e339f6616d 100644 --- a/docs/LangRef.html +++ b/docs/LangRef.html @@ -350,6 +350,9 @@ symbol table entries. Here is an example of the "hello world" module:

; External declaration of the puts function declare int %puts(sbyte*) ; int(sbyte*)* +; Global variable / Function body section separator +implementation + ; Definition of main function int %main() { ; int()* ; Convert [13x sbyte]* to sbyte *... @@ -373,6 +376,13 @@ represented by a pointer to a memory location (in this case, a pointer to an array of char, and a pointer to a function), and have one of the following linkage types.

+

Due to a limitation in the current LLVM assembly parser (it is limited by +one-token lookahead), modules are split into two pieces by the "implementation" +keyword. Global variable prototypes and definitions must occur before the +keyword, and function definitions must occur after it. Function prototypes may +occur either before or after it. In the future, the implementation keyword may +become a noop, if the parser gets smarter.

+