     (save-excursion
       ;; Search forward from the line after the current one
       (forward-line 1)
-      (while  (re-search-forward regexp nil t)
+      (while  (re-real-search-forward regexp nil t)
 	(setq candidate (match-string-no-properties 1))
 	(unless (or (member candidate candidates) (and already-matched (listp already-matched) (member candidate already-matched)))
 	  (push (cons candidate (match-string-no-properties 0)) candidates)

	     )
	(when members
	  (puthash (format "%s.%s" namespace class-name) members *pjs-buffers-class-members-cache*)
	  (puthash (format "%s.%s" namespace class-name) (js--regexp-opt-symbol (loop for item in members
										      collect item))
		   *pjs-buffers-class-members-cache-regexp*)
	  )))))
	 

      ;; search backward from the start of the current line
      (goto-char point)
      (beginning-of-line)
      (while  (re-real-search-backward regexp nil t)
	(setq candidate (match-string-no-properties 1))
	(unless (or (member candidate candidates) (and already-matched (listp already-matched) (member candidate already-matched)))
	  (push (cons candidate (match-string-no-properties 0)) candidates)
