diff options
Diffstat (limited to 'include/clang/Parse/Parser.h')
-rw-r--r-- | include/clang/Parse/Parser.h | 208 |
1 files changed, 104 insertions, 104 deletions
diff --git a/include/clang/Parse/Parser.h b/include/clang/Parse/Parser.h index 2e643bd5e3..49d6182cd2 100644 --- a/include/clang/Parse/Parser.h +++ b/include/clang/Parse/Parser.h @@ -121,25 +121,25 @@ class Parser : public CodeCompletionHandler { /// Objective-C contextual keywords. mutable IdentifierInfo *Ident_instancetype; - /// \brief Identifier for "introduced". + /// Identifier for "introduced". IdentifierInfo *Ident_introduced; - /// \brief Identifier for "deprecated". + /// Identifier for "deprecated". IdentifierInfo *Ident_deprecated; - /// \brief Identifier for "obsoleted". + /// Identifier for "obsoleted". IdentifierInfo *Ident_obsoleted; - /// \brief Identifier for "unavailable". + /// Identifier for "unavailable". IdentifierInfo *Ident_unavailable; - /// \brief Identifier for "message". + /// Identifier for "message". IdentifierInfo *Ident_message; - /// \brief Identifier for "strict". + /// Identifier for "strict". IdentifierInfo *Ident_strict; - /// \brief Identifier for "replacement". + /// Identifier for "replacement". IdentifierInfo *Ident_replacement; /// Identifiers used by the 'external_source_symbol' attribute. @@ -205,7 +205,7 @@ class Parser : public CodeCompletionHandler { /// ColonProtectionRAIIObject RAII object. bool ColonIsSacred; - /// \brief When true, we are directly inside an Objective-C message + /// When true, we are directly inside an Objective-C message /// send expression. /// /// This is managed by the \c InMessageExpressionRAIIObject class, and @@ -215,7 +215,7 @@ class Parser : public CodeCompletionHandler { /// The "depth" of the template parameters currently being parsed. unsigned TemplateParameterDepth; - /// \brief RAII class that manages the template parameter depth. + /// RAII class that manages the template parameter depth. class TemplateParameterDepthRAII { unsigned &Depth; unsigned AddedLevels; @@ -241,11 +241,11 @@ class Parser : public CodeCompletionHandler { /// Factory object for creating AttributeList objects. AttributeFactory AttrFactory; - /// \brief Gathers and cleans up TemplateIdAnnotations when parsing of a + /// Gathers and cleans up TemplateIdAnnotations when parsing of a /// top-level declaration is finished. SmallVector<TemplateIdAnnotation *, 16> TemplateIds; - /// \brief Identifiers which have been declared within a tentative parse. + /// Identifiers which have been declared within a tentative parse. SmallVector<IdentifierInfo *, 8> TentativelyDeclaredIdentifiers; IdentifierInfo *getSEHExceptKeyword(); @@ -400,11 +400,11 @@ private: isTokenBrace() || Tok.is(tok::code_completion) || Tok.isAnnotation(); } - /// \brief Returns true if the current token is '=' or is a type of '='. + /// Returns true if the current token is '=' or is a type of '='. /// For typos, give a fixit to '=' bool isTokenEqualOrEqualTypo(); - /// \brief Return the current token to the token stream and make the given + /// Return the current token to the token stream and make the given /// token the current token. void UnconsumeToken(Token &Consumed) { Token Next = Tok; @@ -474,7 +474,7 @@ private: return PrevTokLocation; } - /// \brief Consume the current code-completion token. + /// Consume the current code-completion token. /// /// This routine can be called to consume the code-completion token and /// continue processing in special cases where \c cutOffParsing() isn't @@ -493,7 +493,7 @@ private: /// \returns the source location of the code-completion token. SourceLocation handleUnexpectedCodeCompletionToken(); - /// \brief Abruptly cut off parsing; mainly used when we have reached the + /// Abruptly cut off parsing; mainly used when we have reached the /// code-completion point. void cutOffParsing() { if (PP.isCodeCompletionEnabled()) @@ -502,7 +502,7 @@ private: Tok.setKind(tok::eof); } - /// \brief Determine if we're at the end of the file or at a transition + /// Determine if we're at the end of the file or at a transition /// between modules. bool isEofOrEom() { tok::TokenKind Kind = Tok.getKind(); @@ -510,34 +510,34 @@ private: Kind == tok::annot_module_end || Kind == tok::annot_module_include; } - /// \brief Checks if the \p Level is valid for use in a fold expression. + /// Checks if the \p Level is valid for use in a fold expression. bool isFoldOperator(prec::Level Level) const; - /// \brief Checks if the \p Kind is a valid operator for fold expressions. + /// Checks if the \p Kind is a valid operator for fold expressions. bool isFoldOperator(tok::TokenKind Kind) const; - /// \brief Initialize all pragma handlers. + /// Initialize all pragma handlers. void initializePragmaHandlers(); - /// \brief Destroy and reset all pragma handlers. + /// Destroy and reset all pragma handlers. void resetPragmaHandlers(); - /// \brief Handle the annotation token produced for #pragma unused(...) + /// Handle the annotation token produced for #pragma unused(...) void HandlePragmaUnused(); - /// \brief Handle the annotation token produced for + /// Handle the annotation token produced for /// #pragma GCC visibility... void HandlePragmaVisibility(); - /// \brief Handle the annotation token produced for + /// Handle the annotation token produced for /// #pragma pack... void HandlePragmaPack(); - /// \brief Handle the annotation token produced for + /// Handle the annotation token produced for /// #pragma ms_struct... void HandlePragmaMSStruct(); - /// \brief Handle the annotation token produced for + /// Handle the annotation token produced for /// #pragma comment... void HandlePragmaMSComment(); @@ -553,43 +553,43 @@ private: bool HandlePragmaMSInitSeg(StringRef PragmaName, SourceLocation PragmaLocation); - /// \brief Handle the annotation token produced for + /// Handle the annotation token produced for /// #pragma align... void HandlePragmaAlign(); - /// \brief Handle the annotation token produced for + /// Handle the annotation token produced for /// #pragma clang __debug dump... void HandlePragmaDump(); - /// \brief Handle the annotation token produced for + /// Handle the annotation token produced for /// #pragma weak id... void HandlePragmaWeak(); - /// \brief Handle the annotation token produced for + /// Handle the annotation token produced for /// #pragma weak id = id... void HandlePragmaWeakAlias(); - /// \brief Handle the annotation token produced for + /// Handle the annotation token produced for /// #pragma redefine_extname... void HandlePragmaRedefineExtname(); - /// \brief Handle the annotation token produced for + /// Handle the annotation token produced for /// #pragma STDC FP_CONTRACT... void HandlePragmaFPContract(); - /// \brief Handle the annotation token produced for + /// Handle the annotation token produced for /// #pragma clang fp ... void HandlePragmaFP(); - /// \brief Handle the annotation token produced for + /// Handle the annotation token produced for /// #pragma OPENCL EXTENSION... void HandlePragmaOpenCLExtension(); - /// \brief Handle the annotation token produced for + /// Handle the annotation token produced for /// #pragma clang __debug captured StmtResult HandlePragmaCaptured(); - /// \brief Handle the annotation token produced for + /// Handle the annotation token produced for /// #pragma clang loop and #pragma unroll. bool HandlePragmaLoopHint(LoopHint &Hint); @@ -628,13 +628,13 @@ private: Tok.setAnnotationValue(T.getAsOpaquePtr()); } - /// \brief Read an already-translated primary expression out of an annotation + /// Read an already-translated primary expression out of an annotation /// token. static ExprResult getExprAnnotation(const Token &Tok) { return ExprResult::getFromOpaquePointer(Tok.getAnnotationValue()); } - /// \brief Set the primary expression corresponding to the given annotation + /// Set the primary expression corresponding to the given annotation /// token. static void setExprAnnotation(Token &Tok, ExprResult ER) { Tok.setAnnotationValue(ER.getAsOpaquePointer()); @@ -718,7 +718,7 @@ private: /// otherwise emits a diagnostic and returns true. bool TryKeywordIdentFallback(bool DisableKeyword); - /// \brief Get the TemplateIdAnnotation from the token. + /// Get the TemplateIdAnnotation from the token. TemplateIdAnnotation *takeTemplateIdAnnotation(const Token &tok); /// TentativeParsingAction - An object that is used as a kind of "tentative @@ -816,14 +816,14 @@ private: unsigned Diag = diag::err_expected, StringRef DiagMsg = ""); - /// \brief The parser expects a semicolon and, if present, will consume it. + /// The parser expects a semicolon and, if present, will consume it. /// /// If the next token is not a semicolon, this emits the specified diagnostic, /// or, if there's just some closing-delimiter noise (e.g., ')' or ']') prior /// to the semicolon, consumes that extra token. bool ExpectAndConsumeSemi(unsigned DiagID); - /// \brief The kind of extra semi diagnostic to emit. + /// The kind of extra semi diagnostic to emit. enum ExtraSemiKind { OutsideFunction = 0, InsideStruct = 1, @@ -831,7 +831,7 @@ private: AfterMemberFunctionDefinition = 3 }; - /// \brief Consume any extra semi-colons until the end of the line. + /// Consume any extra semi-colons until the end of the line. void ConsumeExtraSemi(ExtraSemiKind Kind, unsigned TST = TST_unspecified); /// Return false if the next token is an identifier. An 'expected identifier' @@ -895,7 +895,7 @@ public: void ExitScope(); private: - /// \brief RAII object used to modify the scope flags for the current scope. + /// RAII object used to modify the scope flags for the current scope. class ParseScopeFlags { Scope *CurScope; unsigned OldFlags; @@ -924,10 +924,10 @@ private: public: - /// \brief Control flags for SkipUntil functions. + /// Control flags for SkipUntil functions. enum SkipUntilFlags { StopAtSemi = 1 << 0, ///< Stop skipping at semicolon - /// \brief Stop skipping at specified token, but don't skip the token itself + /// Stop skipping at specified token, but don't skip the token itself StopBeforeMatch = 1 << 1, StopAtCodeCompletion = 1 << 2 ///< Stop at code completion }; @@ -1049,7 +1049,7 @@ private: Decl *D; CachedTokens Toks; - /// \brief Whether this member function had an associated template + /// Whether this member function had an associated template /// scope. When true, D is a template declaration. /// otherwise, it is a member function declaration. bool TemplateScope; @@ -1095,7 +1095,7 @@ private: /// Method - The method declaration. Decl *Method; - /// \brief Whether this member function had an associated template + /// Whether this member function had an associated template /// scope. When true, D is a template declaration. /// otherwise, it is a member function declaration. bool TemplateScope; @@ -1107,7 +1107,7 @@ private: /// scope at the appropriate times. SmallVector<LateParsedDefaultArgument, 8> DefaultArgs; - /// \brief The set of tokens that make up an exception-specification that + /// The set of tokens that make up an exception-specification that /// has not yet been parsed. CachedTokens *ExceptionSpecTokens; }; @@ -1139,7 +1139,7 @@ private: /// entities. typedef SmallVector<LateParsedDeclaration*,2> LateParsedDeclarationsContainer; - /// \brief Representation of a class that has been parsed, including + /// Representation of a class that has been parsed, including /// any member function declarations or definitions that need to be /// parsed after the corresponding top-level class is complete. struct ParsingClass { @@ -1147,19 +1147,19 @@ private: : TopLevelClass(TopLevelClass), TemplateScope(false), IsInterface(IsInterface), TagOrTemplate(TagOrTemplate) { } - /// \brief Whether this is a "top-level" class, meaning that it is + /// Whether this is a "top-level" class, meaning that it is /// not nested within another class. bool TopLevelClass : 1; - /// \brief Whether this class had an associated template + /// Whether this class had an associated template /// scope. When true, TagOrTemplate is a template declaration; /// otherwise, it is a tag declaration. bool TemplateScope : 1; - /// \brief Whether this class is an __interface. + /// Whether this class is an __interface. bool IsInterface : 1; - /// \brief The class or class template whose definition we are parsing. + /// The class or class template whose definition we are parsing. Decl *TagOrTemplate; /// LateParsedDeclarations - Method declarations, inline definitions and @@ -1168,7 +1168,7 @@ private: LateParsedDeclarationsContainer LateParsedDeclarations; }; - /// \brief The stack of classes that is currently being + /// The stack of classes that is currently being /// parsed. Nested and local classes will be pushed onto this stack /// when they are parsed, and removed afterward. std::stack<ParsingClass *> ClassStack; @@ -1178,7 +1178,7 @@ private: return *ClassStack.top(); } - /// \brief RAII object used to manage the parsing of a class definition. + /// RAII object used to manage the parsing of a class definition. class ParsingClassDefinition { Parser &P; bool Popped; @@ -1191,7 +1191,7 @@ private: State(P.PushParsingClass(TagOrTemplate, TopLevelClass, IsInterface)) { } - /// \brief Pop this class of the stack. + /// Pop this class of the stack. void Pop() { assert(!Popped && "Nested class has already been popped"); Popped = true; @@ -1204,7 +1204,7 @@ private: } }; - /// \brief Contains information about any template-specific + /// Contains information about any template-specific /// information that has been parsed prior to parsing declaration /// specifiers. struct ParsedTemplateInfo { @@ -1224,31 +1224,31 @@ private: ExternLoc(ExternLoc), TemplateLoc(TemplateLoc), LastParameterListWasEmpty(false){ } - /// \brief The kind of template we are parsing. + /// The kind of template we are parsing. enum { - /// \brief We are not parsing a template at all. + /// We are not parsing a template at all. NonTemplate = 0, - /// \brief We are parsing a template declaration. + /// We are parsing a template declaration. Template, - /// \brief We are parsing an explicit specialization. + /// We are parsing an explicit specialization. ExplicitSpecialization, - /// \brief We are parsing an explicit instantiation. + /// We are parsing an explicit instantiation. ExplicitInstantiation } Kind; - /// \brief The template parameter lists, for template declarations + /// The template parameter lists, for template declarations /// and explicit specializations. TemplateParameterLists *TemplateParams; - /// \brief The location of the 'extern' keyword, if any, for an explicit + /// The location of the 'extern' keyword, if any, for an explicit /// instantiation SourceLocation ExternLoc; - /// \brief The location of the 'template' keyword, for an explicit + /// The location of the 'template' keyword, for an explicit /// instantiation. SourceLocation TemplateLoc; - /// \brief Whether the last template parameter list was empty. + /// Whether the last template parameter list was empty. bool LastParameterListWasEmpty; SourceRange getSourceRange() const LLVM_READONLY; @@ -1742,11 +1742,11 @@ private: StmtResult ParseStatement(SourceLocation *TrailingElseLoc = nullptr, bool AllowOpenMPStandalone = false); enum AllowedConstructsKind { - /// \brief Allow any declarations, statements, OpenMP directives. + /// Allow any declarations, statements, OpenMP directives. ACK_Any, - /// \brief Allow only statements and non-standalone OpenMP directives. + /// Allow only statements and non-standalone OpenMP directives. ACK_StatementsOpenMPNonStandalone, - /// \brief Allow statements and all executable OpenMP directives + /// Allow statements and all executable OpenMP directives ACK_StatementsOpenMPAnyExecutable }; StmtResult @@ -1787,34 +1787,34 @@ private: SourceLocation *TrailingElseLoc, ParsedAttributesWithRange &Attrs); - /// \brief Describes the behavior that should be taken for an __if_exists + /// Describes the behavior that should be taken for an __if_exists /// block. enum IfExistsBehavior { - /// \brief Parse the block; this code is always used. + /// Parse the block; this code is always used. IEB_Parse, - /// \brief Skip the block entirely; this code is never used. + /// Skip the block entirely; this code is never used. IEB_Skip, - /// \brief Parse the block as a dependent block, which may be used in + /// Parse the block as a dependent block, which may be used in /// some template instantiations but not others. IEB_Dependent }; - /// \brief Describes the condition of a Microsoft __if_exists or + /// Describes the condition of a Microsoft __if_exists or /// __if_not_exists block. struct IfExistsCondition { - /// \brief The location of the initial keyword. + /// The location of the initial keyword. SourceLocation KeywordLoc; - /// \brief Whether this is an __if_exists block (rather than an + /// Whether this is an __if_exists block (rather than an /// __if_not_exists block). bool IsIfExists; - /// \brief Nested-name-specifier preceding the name. + /// Nested-name-specifier preceding the name. CXXScopeSpec SS; - /// \brief The name we're looking for. + /// The name we're looking for. UnqualifiedId Name; - /// \brief The behavior of this __if_exists or __if_not_exists block + /// The behavior of this __if_exists or __if_not_exists block /// should. IfExistsBehavior Behavior; }; @@ -1947,7 +1947,7 @@ private: Decl *ParseFunctionStatementBody(Decl *Decl, ParseScope &BodyScope); Decl *ParseFunctionTryBlock(Decl *Decl, ParseScope &BodyScope); - /// \brief When in code-completion, skip parsing of the function/method body + /// When in code-completion, skip parsing of the function/method body /// unless the body contains the code-completion point. /// /// \returns true if the function body was skipped. @@ -1995,7 +1995,7 @@ private: /// specifier or if we're not sure. bool isKnownToBeTypeSpecifier(const Token &Tok) const; - /// \brief Return true if we know that we are definitely looking at a + /// Return true if we know that we are definitely looking at a /// decl-specifier, and isn't part of an expression such as a function-style /// cast. Return false if it's no a decl-specifier, or we're not sure. bool isKnownToBeDeclarationSpecifier() { @@ -2023,19 +2023,19 @@ private: return isDeclarationSpecifier(true); } - /// \brief Determine whether this is a C++1z for-range-identifier. + /// Determine whether this is a C++1z for-range-identifier. bool isForRangeIdentifier(); - /// \brief Determine whether we are currently at the start of an Objective-C + /// Determine whether we are currently at the start of an Objective-C /// class message that appears to be missing the open bracket '['. bool isStartOfObjCClassMessageMissingOpenBracket(); - /// \brief Starting with a scope specifier, identifier, or + /// Starting with a scope specifier, identifier, or /// template-id that refers to the current class, determine whether /// this is a constructor declarator. bool isConstructorDeclarator(bool Unqualified, bool DeductionGuide = false); - /// \brief Specifies the context in which type-id/expression + /// Specifies the context in which type-id/expression /// disambiguation will occur. enum TentativeCXXTypeIdContext { TypeIdInParens, @@ -2058,7 +2058,7 @@ private: return isTypeIdInParens(isAmbiguous); } - /// \brief Checks if the current tokens form type-id or expression. + /// Checks if the current tokens form type-id or expression. /// It is similar to isTypeIdInParens but does not suppose that type-id /// is in parenthesis. bool isTypeIdUnambiguously() { @@ -2096,7 +2096,7 @@ private: InitStmtDecl, ///< Disambiguated as a simple-declaration init-statement. Error ///< Can't be any of the above! }; - /// \brief Disambiguates between the different kinds of things that can happen + /// Disambiguates between the different kinds of things that can happen /// after 'if (' or 'switch ('. This could be one of two different kinds of /// declaration (depending on whether there is a ';' later) or an expression. ConditionOrInitStatement @@ -2114,7 +2114,7 @@ private: True, False, Ambiguous, Error }; - /// \brief Based only on the given token kind, determine whether we know that + /// Based only on the given token kind, determine whether we know that /// we're at the start of an expression or a type-specifier-seq (which may /// be an expression, in C++). /// @@ -2142,7 +2142,7 @@ private: /// a type-specifier other than a cv-qualifier. bool isCXXDeclarationSpecifierAType(); - /// \brief Determine whether an identifier has been tentatively declared as a + /// Determine whether an identifier has been tentatively declared as a /// non-type. Such tentative declarations should not be found to name a type /// during a tentative parse, but also should not be annotated as a non-type. bool isTentativelyDeclared(IdentifierInfo *II); @@ -2227,16 +2227,16 @@ private: void ProhibitCXX11Attributes(ParsedAttributesWithRange &Attrs, unsigned DiagID); - /// \brief Skip C++11 and C2x attributes and return the end location of the + /// Skip C++11 and C2x attributes and return the end location of the /// last one. /// \returns SourceLocation() if there are no attributes. SourceLocation SkipCXX11Attributes(); - /// \brief Diagnose and skip C++11 and C2x attributes that appear in syntactic + /// Diagnose and skip C++11 and C2x attributes that appear in syntactic /// locations where attributes are not allowed. void DiagnoseAndSkipCXX11Attributes(); - /// \brief Parses syntax-generic attribute arguments for attributes which are + /// Parses syntax-generic attribute arguments for attributes which are /// known to the implementation, and adds them to the given ParsedAttributes /// list with the given attribute syntax. Returns the number of arguments /// parsed for the attribute. @@ -2309,7 +2309,7 @@ private: SourceLocation *EndLoc = nullptr); void ParseCXX11Attributes(ParsedAttributesWithRange &attrs, SourceLocation *EndLoc = nullptr); - /// \brief Parses a C++11 (or C2x)-style attribute argument list. Returns true + /// Parses a C++11 (or C2x)-style attribute argument list. Returns true /// if this results in adding an attribute to the ParsedAttributes list. bool ParseCXX11AttributeArgs(IdentifierInfo *AttrName, SourceLocation AttrNameLoc, @@ -2345,7 +2345,7 @@ private: void ParseBorlandTypeAttributes(ParsedAttributes &attrs); void ParseOpenCLKernelAttributes(ParsedAttributes &attrs); void ParseOpenCLQualifiers(ParsedAttributes &Attrs); - /// \brief Parses opencl_unroll_hint attribute if language is OpenCL v2.0 + /// Parses opencl_unroll_hint attribute if language is OpenCL v2.0 /// or higher. /// \return false if error happens. bool MaybeParseOpenCLUnrollHintAttribute(ParsedAttributes &Attrs) { @@ -2353,7 +2353,7 @@ private: return ParseOpenCLUnrollHintAttribute(Attrs); return true; } - /// \brief Parses opencl_unroll_hint attribute. + /// Parses opencl_unroll_hint attribute. /// \return false if error happens. bool ParseOpenCLUnrollHintAttribute(ParsedAttributes &Attrs); void ParseNullabilityTypeSpecifiers(ParsedAttributes &attrs); @@ -2633,18 +2633,18 @@ private: DeclGroupPtrTy ParseOMPDeclareSimdClauses(DeclGroupPtrTy Ptr, CachedTokens &Toks, SourceLocation Loc); - /// \brief Parses declarative OpenMP directives. + /// Parses declarative OpenMP directives. DeclGroupPtrTy ParseOpenMPDeclarativeDirectiveWithExtDecl( AccessSpecifier &AS, ParsedAttributesWithRange &Attrs, DeclSpec::TST TagType = DeclSpec::TST_unspecified, Decl *TagDecl = nullptr); - /// \brief Parse 'omp declare reduction' construct. + /// Parse 'omp declare reduction' construct. DeclGroupPtrTy ParseOpenMPDeclareReductionDirective(AccessSpecifier AS); /// Parses initializer for provided omp_priv declaration inside the reduction /// initializer. void ParseOpenMPReductionInitializerForDecl(VarDecl *OmpPrivParm); - /// \brief Parses simple list of variables. + /// Parses simple list of variables. /// /// \param Kind Kind of the directive. /// \param Callback Callback function to be called for the list elements. @@ -2656,7 +2656,7 @@ private: const llvm::function_ref<void(CXXScopeSpec &, DeclarationNameInfo)> & Callback, bool AllowScopeSpecifier); - /// \brief Parses declarative or executable directive. + /// Parses declarative or executable directive. /// /// \param Allowed ACK_Any, if any directives are allowed, /// ACK_StatementsOpenMPAnyExecutable - if any executable directives are @@ -2665,7 +2665,7 @@ private: /// StmtResult ParseOpenMPDeclarativeOrExecutableDirective(AllowedConstructsKind Allowed); - /// \brief Parses clause of kind \a CKind for directive of a kind \a Kind. + /// Parses clause of kind \a CKind for directive of a kind \a Kind. /// /// \param DKind Kind of current directive. /// \param CKind Kind of current clause. @@ -2674,7 +2674,7 @@ private: /// OMPClause *ParseOpenMPClause(OpenMPDirectiveKind DKind, OpenMPClauseKind CKind, bool FirstClause); - /// \brief Parses clause with a single expression of a kind \a Kind. + /// Parses clause with a single expression of a kind \a Kind. /// /// \param Kind Kind of current clause. /// \param ParseOnly true to skip the clause's semantic actions and return @@ -2682,14 +2682,14 @@ private: /// OMPClause *ParseOpenMPSingleExprClause(OpenMPClauseKind Kind, bool ParseOnly); - /// \brief Parses simple clause of a kind \a Kind. + /// Parses simple clause of a kind \a Kind. /// /// \param Kind Kind of current clause. /// \param ParseOnly true to skip the clause's semantic actions and return /// nullptr. /// OMPClause *ParseOpenMPSimpleClause(OpenMPClauseKind Kind, bool ParseOnly); - /// \brief Parses clause with a single expression and an additional argument + /// Parses clause with a single expression and an additional argument /// of a kind \a Kind. /// /// \param Kind Kind of current clause. @@ -2698,14 +2698,14 @@ private: /// OMPClause *ParseOpenMPSingleExprWithArgClause(OpenMPClauseKind Kind, bool ParseOnly); - /// \brief Parses clause without any additional arguments. + /// Parses clause without any additional arguments. /// /// \param Kind Kind of current clause. /// \param ParseOnly true to skip the clause's semantic actions and return /// nullptr. /// OMPClause *ParseOpenMPClause(OpenMPClauseKind Kind, bool ParseOnly = false); - /// \brief Parses clause with the list of variables of a kind \a Kind. + /// Parses clause with the list of variables of a kind \a Kind. /// /// \param Kind Kind of current clause. /// \param ParseOnly true to skip the clause's semantic actions and return |