diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/hir/expr.hpp | 2 | ||||
-rw-r--r-- | src/hir/type.hpp | 2 | ||||
-rw-r--r-- | src/hir_typeck/outer.cpp | 2 | ||||
-rw-r--r-- | src/include/synext_macro.hpp | 1 | ||||
-rw-r--r-- | src/mir/helpers.hpp | 2 | ||||
-rw-r--r-- | src/mir/mir.hpp | 2 | ||||
-rw-r--r-- | src/trans/codegen_mmir.cpp | 7 |
7 files changed, 10 insertions, 8 deletions
diff --git a/src/hir/expr.hpp b/src/hir/expr.hpp index 0eb64fce..753170fd 100644 --- a/src/hir/expr.hpp +++ b/src/hir/expr.hpp @@ -873,7 +873,7 @@ class ExprVisitorDef: public ExprVisitor { public: - #define NV(nt) virtual void visit(nt& n); + #define NV(nt) virtual void visit(nt& n) override; virtual void visit_node_ptr(::std::unique_ptr<ExprNode>& node_ptr) override; diff --git a/src/hir/type.hpp b/src/hir/type.hpp index f499c73f..b6c4e34a 100644 --- a/src/hir/type.hpp +++ b/src/hir/type.hpp @@ -21,7 +21,7 @@ constexpr const char* CLOSURE_PATH_PREFIX = "closure#"; namespace HIR { -class TraitMarkings; +struct TraitMarkings; class ExternType; class Struct; class Union; diff --git a/src/hir_typeck/outer.cpp b/src/hir_typeck/outer.cpp index 38c6f652..ef1d38cd 100644 --- a/src/hir_typeck/outer.cpp +++ b/src/hir_typeck/outer.cpp @@ -658,7 +658,7 @@ namespace { auto _ = m_resolve.set_item_generics(item.m_params); ::HIR::Visitor::visit_enum(p, item); } - void visit_associatedtype(::HIR::ItemPath p, ::HIR::AssociatedType& item) + void visit_associatedtype(::HIR::ItemPath p, ::HIR::AssociatedType& item) override { // Push `Self = <Self as CurTrait>::Type` for processing defaults in the bounds. auto path_aty = ::HIR::Path( ::HIR::TypeRef("Self", 0xFFFF), this->get_current_trait_gp(), p.get_name() ); diff --git a/src/include/synext_macro.hpp b/src/include/synext_macro.hpp index e62a6126..55653116 100644 --- a/src/include/synext_macro.hpp +++ b/src/include/synext_macro.hpp @@ -27,6 +27,7 @@ class TokenStream; class ExpandProcMacro { public: + virtual ~ExpandProcMacro() = default; virtual ::std::unique_ptr<TokenStream> expand(const Span& sp, const AST::Crate& crate, const TokenTree& tt, AST::Module& mod) = 0; virtual ::std::unique_ptr<TokenStream> expand_ident(const Span& sp, const AST::Crate& crate, const RcString& ident, const TokenTree& tt, AST::Module& mod) { ERROR(sp, E0000, "macro doesn't take an identifier"); diff --git a/src/mir/helpers.hpp b/src/mir/helpers.hpp index 0296a1c4..0b9ac093 100644 --- a/src/mir/helpers.hpp +++ b/src/mir/helpers.hpp @@ -21,7 +21,7 @@ struct SimplePath; namespace MIR { class Function; -class LValue; +struct LValue; class Constant; struct BasicBlock; class Terminator; diff --git a/src/mir/mir.hpp b/src/mir/mir.hpp index b2a89542..f5a566e1 100644 --- a/src/mir/mir.hpp +++ b/src/mir/mir.hpp @@ -12,7 +12,7 @@ #include <memory> // std::unique_ptr #include <hir/type.hpp> -class MonomorphState; +struct MonomorphState; namespace MIR { diff --git a/src/trans/codegen_mmir.cpp b/src/trans/codegen_mmir.cpp index c5d4e9de..d10adef2 100644 --- a/src/trans/codegen_mmir.cpp +++ b/src/trans/codegen_mmir.cpp @@ -319,8 +319,8 @@ namespace (Tuple, return metadata_type( monomorph(se.back().ent) ); ), (Named, return metadata_type( monomorph(se.back().second.ent) ); ) ) - //MIR_TODO(*m_mir_res, "Determine DST type when ::Possible - " << ty); - return MetadataType::None; + //MIR_TODO(*m_mir_res, "Determine DST type when ::Possible - " << ty); + return MetadataType::None; } case ::HIR::StructMarkings::DstType::Slice: return MetadataType::Slice; @@ -336,6 +336,7 @@ namespace default: MIR_BUG(*m_mir_res, "Unbound/opaque path in trans - " << ty); } + throw ""; } else { return MetadataType::None; @@ -480,7 +481,7 @@ namespace } m_mir_res = nullptr; } - virtual void emit_constructor_enum(const Span& sp, const ::HIR::GenericPath& var_path, const ::HIR::Enum& item, size_t var_idx) + void emit_constructor_enum(const Span& sp, const ::HIR::GenericPath& var_path, const ::HIR::Enum& item, size_t var_idx) override { TRACE_FUNCTION_F(var_path); |