1 //===-- lib/Semantics/check-select-type.h -----------------------*- C++ -*-===//
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //===----------------------------------------------------------------------===//
9 #ifndef FORTRAN_SEMANTICS_CHECK_SELECT_TYPE_H_
10 #define FORTRAN_SEMANTICS_CHECK_SELECT_TYPE_H_
12 #include "flang/Semantics/semantics.h"
14 namespace Fortran::parser
{
15 struct SelectTypeConstruct
;
17 } // namespace Fortran::parser
19 namespace Fortran::semantics
{
21 class SelectTypeChecker
: public virtual BaseChecker
{
23 explicit SelectTypeChecker(SemanticsContext
&context
) : context_
{context
} {};
24 void Enter(const parser::SelectTypeConstruct
&);
27 const SomeExpr
*GetExprFromSelector(const parser::Selector
&);
28 SemanticsContext
&context_
;
30 } // namespace Fortran::semantics
31 #endif // FORTRAN_SEMANTICS_CHECK_SELECT_TYPE_H_