On Mon, May 16, 2016 at 8:38 PM Eric Abrahamsen <eric@ericabrahamsen.net> wrote:
Starting with emacs -Q, then adding the org-plus-contrib directory to
load-path:

Are you installing both the git master version and org-plus-contrib? I do not have org-plus-contrib in my load-path. The only org I have in the load-path is the git master version. If you *are* installing both versions, then that could probably explain the issue you are facing.
 
M-x org-agenda
t ;; all todos, an empty list of course
/
SPC

And I get the error.

I tried that. But I don't get any error.

I took the original org-agenda-filter-make-matcher-tag-exp function from the git master and added few debug statements as below:

(defun org-agenda-filter-make-matcher-tag-exp (tags op)
  "Return a form associated to tag-expression TAGS.
Build a form testing a line for agenda filter for
tag-expressions.  OP is an operator of type CHAR that allows the
function to set the right switches in the returned form."
  (message "arg tags: %S" tags)
  (message "arg op: %S" op)
  (let (form ret)
    ;; Any of the expressions can match if OP is +, all must match if
    ;; the operator is -.
    (dolist (x tags (cons (if (eq op ?-) 'and 'or) form)) 
      (let* ((tag (substring x 1))
             (f (cond
((string= "" tag) '(not tags))
((and (string-match-p "\\`{" tag) (string-match-p "}\\'" tag))
 ;; TAG is a regexp.
 (list 'org-match-any-p (substring tag 1 -1) 'tags))
(t (list 'member (downcase tag) 'tags)))))
        (message "in let, tag: %S" tag)
        (message "in let, f: %S" f)
(prog1
            (setq ret (push (if (eq op ?-) (list 'not f) f) form))
          (message "ret val: %S" ret))))))

Then when I do M-x org-agenda t / SPC, I get:

arg tags: ("+")
arg op: 43
in let, tag: ""
in let, f: (not tags)
ret val: ((not tags))

--

--
Kaushal Modi