| Index: src/parser.cc
|
| diff --git a/src/parser.cc b/src/parser.cc
|
| index 9bca3d552401b93770765c2c0bcc390655050715..ab7b778534969c99c40dd0cd6f0235931638e8e4 100644
|
| --- a/src/parser.cc
|
| +++ b/src/parser.cc
|
| @@ -891,6 +891,9 @@ FunctionLiteral* Parser::DoParseProgram(CompilationInfo* info,
|
| bool ok = true;
|
| int beg_pos = scanner()->location().beg_pos;
|
| ParseSourceElements(body, Token::EOS, info->is_eval(), true, &ok);
|
| +
|
| + HandleSourceURLComments();
|
| +
|
| if (ok && strict_mode() == STRICT) {
|
| CheckOctalLiteral(beg_pos, scanner()->location().end_pos, &ok);
|
| }
|
| @@ -3866,6 +3869,18 @@ void Parser::RegisterTargetUse(Label* target, Target* stop) {
|
| }
|
|
|
|
|
| +void Parser::HandleSourceURLComments() {
|
| + if (scanner_.source_url()->length() > 0) {
|
| + info_->script()->set_source_url(
|
| + *scanner_.source_url()->Internalize(isolate()));
|
| + }
|
| + if (scanner_.source_mapping_url()->length() > 0) {
|
| + info_->script()->set_source_mapping_url(
|
| + *scanner_.source_mapping_url()->Internalize(isolate()));
|
| + }
|
| +}
|
| +
|
| +
|
| void Parser::ThrowPendingError() {
|
| if (has_pending_error_) {
|
| MessageLocation location(script_,
|
|
|