The ``++void++`` operator evaluates its argument and unconditionally returns ``++undefined++``. It can be useful in pre-ECMAScript 5 environments, where ``++undefined++`` could be reassigned, but generally, its use makes code harder to understand.
== Noncompliant Code Example
----
void doSomething();
== Compliant Solution
doSomething();
== Exceptions
No issue is raised when ``++void 0++`` is used in place of ``++undefined++``.
if (parameter === void 0) {...}
No issue is also raised when ``++void++`` is used before immediately invoked function expressions.
void (function() {
...
}());