diff --git a/mercurial/revset.py b/mercurial/revset.py --- a/mercurial/revset.py +++ b/mercurial/revset.py @@ -1277,7 +1277,7 @@ def named(repo, subset, x): names = set() for ns in namespaces: for name in ns.listnames(repo): - names.update(ns.nodes(repo, name)) + names.update(repo[n].rev() for n in ns.nodes(repo, name)) names -= set([node.nullrev]) return subset & names diff --git a/tests/test-revset.t b/tests/test-revset.t --- a/tests/test-revset.t +++ b/tests/test-revset.t @@ -787,6 +787,12 @@ we can use patterns when searching for t $ log 'present(named("unknown"))' $ log 'present(named("re:unknown"))' + $ log 'tag()' + 6 + $ log 'named("tags")' + 6 + 9 + issue2437 $ log '3 and p1(5)'