summaryrefslogtreecommitdiff
path: root/src/ast
diff options
context:
space:
mode:
Diffstat (limited to 'src/ast')
-rw-r--r--src/ast/ast.hpp7
-rw-r--r--src/ast/pattern.cpp1
-rw-r--r--src/ast/pattern.hpp4
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}) )
{}