[docs] PR15254: Add "AST" to the lexicon.
authorSean Silva <silvas@purdue.edu>
Wed, 13 Feb 2013 21:17:20 +0000 (21:17 +0000)
committerSean Silva <silvas@purdue.edu>
Wed, 13 Feb 2013 21:17:20 +0000 (21:17 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@175077 91177308-0d34-0410-b5e6-96231b3b80d8

docs/Lexicon.rst

index 10821f471296ce0edb4aafe8399edfc2399bf12d..11f1341f5cbd62e49dc5b0c0898577d999ae9535 100644 (file)
@@ -15,6 +15,21 @@ A
 **ADCE**
     Aggressive Dead Code Elimination
 
+**AST**
+    Abstract Syntax Tree.
+
+    Due to Clang's influence (mostly the fact that parsing and semantic
+    analysis are so intertwined for C and especially C++), the typical
+    working definition of AST in the LLVM community is roughly "the
+    compiler's first complete symbolic (as opposed to textual)
+    representation of an input program".
+    As such, an "AST" might be a more general graph instead of a "tree"
+    (consider the symbolic representation for the type of a typical "linked
+    list node"). This working definition is closer to what some authors
+    call an "annotated abstract syntax tree".
+
+    Consult your favorite compiler book or search engine for more details.
+
 B
 -