Lines Matching full:semantic

1115 tokens represent semantic information and are produced by the parser, replacing
1163 don't contain any semantic information about the lexed value. For example, if
1180 semantic information found by the parser. For example, if "``foo``" is found
1185 reparse does not need to redo semantic analysis to determine whether a token
1402 range-based for statement, but also holds a semantic representation of the
1424 Typedefs in C make semantic analysis a bit more complex than it would be without
1468 with this: first, various semantic checks need to make judgements about the
1677 semantics. The two views are kept synchronized by semantic analysis while
1751 declarations of "``g``". Clients that perform semantic analysis on a program
1757 Lexical and Semantic Contexts
1762 declaration context, and a *semantic* context, which corresponds to the
1764 ``Decl::getLexicalDeclContext`` while the semantic context is accessible via
1775 Here, the semantic and lexical contexts of ``X::f`` are the ``DeclContext``
1783 This definition of "``f``" has different lexical and semantic contexts. The
1790 The semantic context of ``X::f`` corresponds to the class ``X``, since this
1845 transparent ``DeclContext`` itself, as will the semantic context, but the
1906 each namespace definition are effectively merged (from the semantic point of
1973 form, e.g. when the "declaration" part of the declaration contains semantic
1977 expression was dropped though a CallExpr was created for semantic analysis.
2070 express “Does this expression or anything within it contain errors” semantic,
2648 After invoking the parser+semantic analyzer on this code fragment, the AST of
2748 to constant fold the constants, to do semantic checks (e.g., verify bitfield
2770 Finally, this is not just a problem for semantic analysis. The code generator
2848 do semantic analysis of the input. For valid programs, Sema builds an AST for
2865 allowing the programmer to pass semantic information along to the compiler for
2867 for a program construct, or to provide extra semantic information for static
2875 representation, conversion from a parsed attribute into a semantic attribute,
2876 and then the semantic handling of the attribute.
2890 into a semantic attribute. The process by which a parsed attribute is converted
2891 into a semantic attribute depends on the attribute definition and semantic
2892 requirements of the attribute. The end result, however, is that the semantic
2896 ``ParsedAttr`` objects to be converted into a semantic attribute.
2898 The structure of the semantic attribute is also governed by the attribute
2902 semantic checking for some attributes, etc.
2911 semantic) type, or one of its derivatives. Most attributes will derive from the
2925 semantic name of the attribute, the spellings the attribute supports, the
2934 which the attribute can be spelled. For instance, a single semantic attribute
2980 binary interface of the code, or that have other similar semantic meaning.
3068 attribute. Attribute arguments specify both the parsed form and the semantic
3073 semantic attribute will require a string and integer argument.
3089 semantic form, the ``HasCustomParsing`` bit can be set to ``1`` for the class,
3096 Note that setting this member to 1 will opt out of common attribute semantic
3107 other attributes generate an AST node by default. The AST node is the semantic
3121 These accessors will be generated on the semantic form of the attribute,
3124 Attributes that do not require custom semantic handling should set the
3126 ``IgnoredAttr`` automatically do not get a semantic handler. All other
3127 attributes are assumed to use a semantic handler by default. Attributes
3128 without a semantic handler are not given a parsed attribute ``Kind`` enumerator.
3130 "Simple" attributes, that require no custom semantic processing aside from what
3135 attribute spelled ``GNU<"interrupt">``, but with different parsing and semantic
3140 attributes to share a parsed attribute kind, but have distinct semantic
3143 semantic attributes generated.
3150 If additional functionality is desired for the semantic form of the attribute,
3152 semantic attribute class object, with ``public`` access.
3163 All semantic processing of declaration attributes happens in `lib/Sema/SemaDeclAttr.cpp
3172 Unless otherwise specified by the attribute definition, common semantic checking
3185 All semantic diagnostics generated for your attribute, including automatically-
3189 Semantic handling
3192 instance, to modify the way code is generated, or to add extra semantic checks
3194 to the semantic representation for the attribute, what remains is to implement
3198 attribute using ``hasAttr<T>()``. To obtain a pointer to the semantic
3209 compiler, because they interact with many different parts of the AST, semantic
3229 #. Introduce semantic analysis actions into ``Sema``. Semantic analysis should
3232 actual semantic analysis and will (eventually!) build the AST node. It's
3237 variant. Several notes on semantic analysis before we get into construction
3289 #. Teach semantic analysis to build your AST node. At this point, you can wire
3297 return a C++ class with a private destructor: semantic analysis should
3325 expects, STOP! Go fix semantic analysis and the AST so that you don't
3360 semantic analysis and build your expression.