1919#include " flang/Parser/message.h"
2020#include " flang/Support/Fortran-features.h"
2121#include " flang/Support/LangOptions.h"
22+ #include " clang/Basic/Diagnostic.h"
2223#include < iosfwd>
2324#include < set>
2425#include < string>
@@ -68,7 +69,7 @@ class SemanticsContext {
6869public:
6970 SemanticsContext (const common::IntrinsicTypeDefaultKinds &,
7071 const common::LanguageFeatureControl &, const common::LangOptions &,
71- parser::AllCookedSources &);
72+ parser::AllCookedSources &, clang::DiagnosticsEngine & );
7273 ~SemanticsContext ();
7374
7475 const common::IntrinsicTypeDefaultKinds &defaultKinds () const {
@@ -82,6 +83,7 @@ class SemanticsContext {
8283 int doublePrecisionKind () const {
8384 return defaultKinds_.doublePrecisionKind ();
8485 }
86+ clang::DiagnosticsEngine &getDiagnostics () const { return diags_; }
8587 int quadPrecisionKind () const { return defaultKinds_.quadPrecisionKind (); }
8688 bool IsEnabled (common::LanguageFeature feature) const {
8789 return languageFeatures_.IsEnabled (feature);
@@ -305,6 +307,7 @@ class SemanticsContext {
305307 const common::IntrinsicTypeDefaultKinds &defaultKinds_;
306308 const common::LanguageFeatureControl &languageFeatures_;
307309 const common::LangOptions &langOpts_;
310+ clang::DiagnosticsEngine &diags_;
308311 parser::AllCookedSources &allCookedSources_;
309312 std::optional<parser::CharBlock> location_;
310313 std::vector<std::string> searchDirectories_;
0 commit comments