I did wonder that... JSLint does warn, and JSHint does optionally, but I thought it should probably be a separate rule. IMHO wrapping all IIFEs in parens is quite different to the position of the invoking parens, since obviously the position doesn't make any functional difference, whereas the wrapping parens can (assuming no other part of the construct causes the function to be parsed as an expression). Up to you... happy to add it to this if you like?