1 //===-- lib/Semantics/check-case.h ------------------------------*- C++ -*-===// 2 // 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 6 // 7 //===----------------------------------------------------------------------===// 8 9 #ifndef FORTRAN_SEMANTICS_CHECK_CASE_H_ 10 #define FORTRAN_SEMANTICS_CHECK_CASE_H_ 11 12 #include "flang/Semantics/semantics.h" 13 14 namespace Fortran::parser { 15 struct CaseConstruct; 16 } 17 18 namespace Fortran::semantics { 19 20 class CaseChecker : public virtual BaseChecker { 21 public: CaseChecker(SemanticsContext & context)22 explicit CaseChecker(SemanticsContext &context) : context_{context} {}; 23 24 void Enter(const parser::CaseConstruct &); 25 26 private: 27 SemanticsContext &context_; 28 }; 29 } // namespace Fortran::semantics 30 #endif // FORTRAN_SEMANTICS_CHECK_CASE_H_ 31