According to the latest draft of the specification and other implementations of ES6's Set, "new Set" should optionally take an iterable instead of variable arguments. In trunk (and Safari 8 and iOS 8), SetConstructor::constructSet processes variable arguments. Additionally, calling "Set(...)" should always throw a TypeError regardless of its arguments. Currently SetConstructor::callSet does not raise an exception when invoked as "Set()" without arguments.
This has been fixed as of iOS 9.