summaryrefslogtreecommitdiff
path: root/odb/parser.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'odb/parser.cxx')
-rw-r--r--odb/parser.cxx11
1 files changed, 6 insertions, 5 deletions
diff --git a/odb/parser.cxx b/odb/parser.cxx
index 88c32d6..c1e0156 100644
--- a/odb/parser.cxx
+++ b/odb/parser.cxx
@@ -777,12 +777,13 @@ emit ()
// approximation for this namespace origin. Also resolve
// the tree node for this namespace.
//
- namespace_& node (
- unit_->new_node<namespace_> (
- f, l, c,
- namespace_binding (
- get_identifier (n.c_str ()), scope_->tree_node ())));
+ tree tree_node (
+ namespace_binding (
+ get_identifier (n.c_str ()), scope_->tree_node ()));
+
+ namespace_& node (unit_->new_node<namespace_> (f, l, c, tree_node));
unit_->new_edge<defines> (*scope_, node, n);
+ unit_->insert (tree_node, node);
scope_ = &node;
if (e == string::npos)