diff -r 8afaf7cef35a -r da05fe01170b mercurial/revset.py --- a/mercurial/revset.py Wed Sep 17 00:28:37 2014 +0900 +++ b/mercurial/revset.py Fri Sep 12 16:21:13 2014 -0700 @@ -666,10 +666,8 @@ # Both sets need to be ascending in order to lazily return the union # in the correct order. args.ascending() - - subsetset = subset.set() - result = (orderedlazyset(s, subsetset.__contains__, ascending=True) + - orderedlazyset(args, subsetset.__contains__, ascending=True)) + result = (orderedlazyset(s, subset.__contains__, ascending=True) + + orderedlazyset(args, subset.__contains__, ascending=True)) # Wrap result in a lazyset since it's an _addset, which doesn't implement # all the necessary functions to be consumed by callers.