According to the spec, this snippet should make foo() available to every NodeList object

  NodeList.prototype.foo = function() {
    return true;
  };
    

Opera does return a NodeList in every case, but foo() is undefined when called with querySelectorAll; this seems like a bug.

test for yourself (alerts true when it passes or throws an error in the console):