Get rid of false positive gcc warnings

Due to an old bug [1], gcc generates false positive while using
designated initializers. This patch suppresses this warnings while
using gcc.

[1] (http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36446)
Fix and consolidate option -e, -l, and -w

In the current implementation it was confusion when and when not the
prefix PRE (option -e) was prepended to the log filename (Besides the
problem that the current logic was broken).

Now, the option -e is only for the dumpfile anymore. Moreover, the
option -l and -w are consolidated. Option -w has now an optional
argument for the filename.
flowgrind: make -w optional, as originally intended