]> git.donarmstrong.com Git - lilypond.git/commitdiff
Lily_parser* arg for copy ctor too.
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Fri, 3 Nov 2006 17:28:33 +0000 (18:28 +0100)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Fri, 3 Nov 2006 17:28:33 +0000 (18:28 +0100)
lily/include/lily-lexer.hh
lily/lily-lexer.cc
lily/lily-parser.cc

index b64798823b7dce81e6f4b579f690cd1fc8051179..543178ca257be56136b83d8dbdf8c03c4b69a5c0 100644 (file)
@@ -53,7 +53,7 @@ public:
   Input last_input_;
 
   Lily_lexer (Sources *, Lily_parser *);
-  Lily_lexer (Lily_lexer const &);
+  Lily_lexer (Lily_lexer const &, Lily_parser *);
   int yylex ();
 
   void add_lexed_char (int);
index 1f39bd242584647489e93efcdffdbf0a16d301a7..394e20089b9586676e6e40048d6196e14d76feee 100644 (file)
@@ -100,9 +100,10 @@ Lily_lexer::Lily_lexer (Sources *sources, Lily_parser *parser)
   chordmodifier_tab_ = scm_make_vector (scm_from_int (1), SCM_EOL);
 }
 
-Lily_lexer::Lily_lexer (Lily_lexer const &src)
+Lily_lexer::Lily_lexer (Lily_lexer const &src, Lily_parser *parser)
   : Includable_lexer ()
 {
+  parser_ = parser; 
   keytable_ = (src.keytable_) ? new Keyword_table (*src.keytable_) : 0;
   chordmodifier_tab_ = src.chordmodifier_tab_;
   pitchname_tab_stack_ = src.pitchname_tab_stack_;
index a339e8a8f5d7c6585b98c3ef034a28b43224a1dc..e71176c873e51b570d7136cb23e4f18dd1d366a9 100644 (file)
@@ -50,8 +50,10 @@ Lily_parser::Lily_parser (Lily_parser const &src)
 
   smobify_self ();
   if (src.lexer_)
-    lexer_ = new Lily_lexer (*src.lexer_);
-
+    {
+      lexer_ = new Lily_lexer (*src.lexer_, this);
+    }
+  
   lexer_->unprotect ();
 }