I excluded Objective C and C++ constructs from these lists. Some constructs do not appear in the referenced documents, such as IntegerLiterals. So constructs will be added to these lists as necessary. Also, I've included other elements that we probably won't be using, such as the AsmStmt. We can prune as we go along. = Stmt = * Asm * Break * Compound * Continue * Decl * Do * Expr (See below) * __For__ * Need to agree on label "ForStatementNode" * Goto * If * IndirectGoto. * Label * Null * ~~Return~~ * SwitchCase. * Switch * While = Expr = * AddrLabelExpr * ArraySubscriptExpr * ArrayTypeTraitExpr * BinaryOperator * BinaryTypeTraitExpr * ~~BinAssign~~ * ~~BinEQ~~ * BlockDeclRefExpr * BlockExpr * ~~CallExpr~~ * CastExpr * CharacterLiteral * ~~IntegerLiteral~~ * ChooseExpr * CompoundLiteralExpr * ~~ConditionalOperator~~ * ~~DeclRefExpr~~ = Decl = * BlockDecl * ~~TranslationUnitDecl~~ * LabelDecl * EnumDecl * TypedefDecl * ~~FunctionDecl~~ * ~~ParmVarDecl~~ * ~~VarDecl~~ * EnumConstantDecl = Type = * ArrayType * AttributedType * BlockPointerType * ~~BuiltinType~~ * ComplexType * DeclType * FunctionType * ~~PointerType~~ * ReferenceType * TagType * TypedefType References: * [http://clang.llvm.org/doxygen/classclang_1_1Stmt.html] * [http://clang.llvm.org/doxygen/classclang_1_1Decl.html]