changeset 10633:d022061c288d

symbol_table minor improvements
author Jaroslav Hajek <highegg@gmail.com>
date Fri, 14 May 2010 06:59:41 +0200
parents 69a715c81eab
children 60542efcfa2c
files src/ChangeLog src/symtab.h
diffstat 2 files changed, 7 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/src/ChangeLog	Thu May 13 17:36:41 2010 -0400
+++ b/src/ChangeLog	Fri May 14 06:59:41 2010 +0200
@@ -1,3 +1,8 @@
+2010-05-14  Jaroslav Hajek  <highegg@gmail.com>
+
+	* symtab.cc (symtab::do_mark_global, symtab::do_mark_hidden): Force
+	non-existing symbol to be created.
+
 2010-05-13  Jaroslav Hajek  <highegg@gmail.com>
 
 	* xdiv.cc (solve_singularity_warning): Use ID for the warning.
--- a/src/symtab.h	Thu May 13 17:36:41 2010 -0400
+++ b/src/symtab.h	Fri May 14 06:59:41 2010 +0200
@@ -2235,18 +2235,12 @@
 
   void do_mark_hidden (const std::string& name)
   {
-    table_iterator p = table.find (name);
-
-    if (p != table.end ())
-      p->second.mark_hidden ();
+    do_insert (name).mark_hidden ();
   }
 
   void do_mark_global (const std::string& name)
   {
-    table_iterator p = table.find (name);
-
-    if (p != table.end ())
-      p->second.mark_global ();
+    do_insert (name).mark_global ();
   }
 
   std::list<symbol_record>