emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] master e481404 27/38: [bugfix] error when parsing malformed names


From: Dmitry Gutov
Subject: [elpa] master e481404 27/38: [bugfix] error when parsing malformed namespace import
Date: Wed, 28 Feb 2018 20:12:12 -0500 (EST)

branch: master
commit e481404931e071c1c19e0ee588b1759dda335b3d
Author: felipe <address@hidden>
Commit: felipe <address@hidden>

    [bugfix] error when parsing malformed namespace import
---
 js2-mode.el     | 9 +++++----
 tests/parser.el | 5 +++++
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/js2-mode.el b/js2-mode.el
index 74ab3e4..dc3ddaa 100644
--- a/js2-mode.el
+++ b/js2-mode.el
@@ -8761,9 +8761,9 @@ imports or a namespace import that follows it.
         (when ns-import
           (let ((name-node (js2-namespace-import-node-name ns-import)))
             (js2-define-symbol
-             js2-LET (js2-name-node-name name-node) name-node t)))
-        (setf (js2-import-clause-node-namespace-import clause) ns-import)
-        (push ns-import children)))
+             js2-LET (js2-name-node-name name-node) name-node t))
+          (setf (js2-import-clause-node-namespace-import clause) ns-import)
+          (push ns-import children))))
      ((js2-match-token js2-LC)
       (let ((imports (js2-parse-export-bindings t)))
         (setf (js2-import-clause-node-named-imports clause) imports)
@@ -8822,7 +8822,8 @@ The current token must be js2-MUL."
            node)))
       (t
        (js2-unget-token)
-       (js2-report-error "msg.syntax")))))
+       (js2-report-error "msg.syntax")
+       nil))))
 
 
 (defun js2-parse-from-clause ()
diff --git a/tests/parser.el b/tests/parser.el
index 3041dbc..1853f03 100644
--- a/tests/parser.el
+++ b/tests/parser.el
@@ -647,6 +647,11 @@ the test."
       (should (equal "lib" (js2-name-node-name name-node)))
       (should (= 5 (js2-node-pos name-node))))))
 
+(js2-deftest-parse parse-namespace-import-error
+  "import * lib from 'lib';"
+  :syntax-error "import"
+  :errors-count 7)
+
 (js2-deftest parse-from-clause "from 'foo/bar';"
   (js2-init-scanner)
   (let ((from (js2-parse-from-clause)))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]