diff options
Diffstat (limited to 'src/ast')
-rw-r--r-- | src/ast/ast.hpp | 7 | ||||
-rw-r--r-- | src/ast/pattern.cpp | 1 | ||||
-rw-r--r-- | src/ast/pattern.hpp | 4 |
3 files changed, 9 insertions, 3 deletions
diff --git a/src/ast/ast.hpp b/src/ast/ast.hpp index 8c27b765..2e939e0c 100644 --- a/src/ast/ast.hpp +++ b/src/ast/ast.hpp @@ -205,10 +205,13 @@ class Trait: bool m_is_marker;
NamedList<Item> m_items;
public:
- Trait() {}
+ Trait():
+ m_is_marker(false)
+ {}
Trait(GenericParams params, ::std::vector< Spanned<Path> > supertraits):
m_params( mv$(params) ),
- m_supertraits( mv$(supertraits) )
+ m_supertraits( mv$(supertraits) ),
+ m_is_marker(false)
{
}
diff --git a/src/ast/pattern.cpp b/src/ast/pattern.cpp index 80665008..ca5378e1 100644 --- a/src/ast/pattern.cpp +++ b/src/ast/pattern.cpp @@ -173,6 +173,7 @@ AST::Pattern AST::Pattern::clone() const AST::Pattern rv; rv.m_span = m_span; rv.m_binding = m_binding; + rv.m_binding_type = m_binding_type; rv.m_binding_mut = m_binding_mut; struct H { diff --git a/src/ast/pattern.hpp b/src/ast/pattern.hpp index a901ac89..79d349c2 100644 --- a/src/ast/pattern.hpp +++ b/src/ast/pattern.hpp @@ -54,7 +54,8 @@ private: public: virtual ~Pattern(); - Pattern() + Pattern(): + m_binding_type(BIND_MOVE) {} Pattern(Pattern&&) = default; Pattern& operator=(Pattern&&) = default; @@ -62,6 +63,7 @@ public: struct TagMaybeBind {}; Pattern(TagMaybeBind, ::std::string name): m_binding(""), + m_binding_type(BIND_MOVE), m_data( Data::make_MaybeBind({name}) ) {} |