Make comma operator return void when warnings are enabled

This is a follow-up to https://github.com/D-Programming-Language/dmd/pull/3399.

As suggested by Andrei [1], the comma operator is changed to return `void` in `-w` mode. This partially fixes https://issues.dlang.org/show_bug.cgi?id=2659. Thanks go to @yebblies for his suggestions about the implementation.

[1] http://forum.dlang.org/thread/lgsel0%2429fd%241@digitalmars.com
As you said, casting to `void` already works at compile time.  Why is it producing an error now?