1 //===-- lib/Semantics/check-stop.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_STOP_H_ 10 #define FORTRAN_SEMANTICS_CHECK_STOP_H_ 11 12 #include "flang/Semantics/semantics.h" 13 14 namespace Fortran::parser { 15 struct StopStmt; 16 } 17 18 namespace Fortran::semantics { 19 20 // Semantic analysis of STOP and ERROR STOP statements. 21 class StopChecker : public virtual BaseChecker { 22 public: StopChecker(SemanticsContext & context)23 explicit StopChecker(SemanticsContext &context) : context_{context} {}; 24 25 void Enter(const parser::StopStmt &); 26 27 private: 28 SemanticsContext &context_; 29 }; 30 31 } // namespace Fortran::semantics 32 33 #endif // FORTRAN_SEMANTICS_CHECK_STOP_H_ 34