When a command block operate the "/clear" command, even when it doesn't remove any item, ("removing 0 items) it considers it succesful and therefore gives an output when tested with a comparator, becoming useless.
When a command block operate the "/clear" command, even when it doesn't remove any item, ("removing 0 items) it considers it succesful and therefore gives an output when tested with a comparator, becoming useless.
Thats because the comparator takes the signal, that you used to trigger the commandblock out of the commandblock. For the testfor command it's different, because it has an extra clause in the code. Not a bug.