diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2015-02-23 15:56:03 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2015-02-23 15:56:03 +0200 |
commit | fefe0657f29b8db782f7a722dd46b074b991cf08 (patch) | |
tree | 62008e350c4f6048a68444fe50c47281643d276a /build/parser.cxx | |
parent | 962cb1040670977085f0a187ecc6730608578151 (diff) |
Redo rule match/build logic
Now the rule is fully responsible for searching, matching, and building
of prerequisites.
Diffstat (limited to 'build/parser.cxx')
-rw-r--r-- | build/parser.cxx | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/build/parser.cxx b/build/parser.cxx index f2b7a3f..5102c60 100644 --- a/build/parser.cxx +++ b/build/parser.cxx @@ -53,8 +53,8 @@ namespace build void parser:: parse (istream& is, const path& p, scope& s) { - string ds (diagnostic_string (p)); - path_ = &ds; + string rw (diag_relative_work (p)); + path_ = &rw; lexer l (is, p.string ()); lexer_ = &l; @@ -403,9 +403,9 @@ namespace build level4 ([&]{trace (t) << "entering " << p;}); - string ds (diagnostic_string (p)); + string rw (diag_relative_work (p)); const string* op (path_); - path_ = &ds; + path_ = &rw; lexer l (ifs, p.string ()); lexer* ol (lexer_); @@ -475,9 +475,9 @@ namespace build level4 ([&]{trace (t) << "entering " << p;}); - string ds (diagnostic_string (p)); + string rw (diag_relative_work (p)); const string* op (path_); - path_ = &ds; + path_ = &rw; lexer l (ifs, p.string ()); lexer* ol (lexer_); |