Some of GDC's command-line switches are just an eyesore to look at, and are not very obvious or intuitive as to what they do. To name the main culprits: -fintfc -fintfc-dir -fintfc-file -fXf -fd-vtls -fd-verbose -fdoc -fdoc-dir= -fdoc-file= -fdoc-inc= These, and possibly a few others that either don't control the compilation or don't have a negative form should instead be clear --long-options rather than abbreviated -foptions.
Any takers on proposed names? Am looking to set-up aliases for the 2.066 release (and deprecate the old-style switches).
OK, this is my proposal: --dump=json (-fXf) --dump=tls (-fd-vtls) --dump=frontend (-fd-verbose) --dump=all (all above) All the above shall be written to a file, not stderr (this is so that these options never conflct with -pipe) Files generated by --dump will be written in the working directory where gdc was called from. --write-ddoc (-fdoc-file) --write-interfaces (-fintfc) --write-dependencies (-fmake-deps) --write-user-dependencies (-fmake-mdeps) *.ddoc will be added to lang-spec.h as a recognised language file instead of the ugly -fdoc-inc= Remove -dir= switches, maybe also remove the -file= switches too. Files generated by --write will be written in the same directory path as the -o file
OK - I think it's may be time to make a push for this. While I'm at it, lets go for having short DMD-style switches for most things, changing all others to be aliases to the short opts. -write-interfaces Alias(H) fintfc Alias(H) fintfc-dir= Alias(Hd) fintfc-file= Alias(Hf) -write-ddoc Alias(D) fdoc Alias(D) fdoc-dir= Alias(Dd) fdoc-file= Alias(Df) -write-dependencies Alias(MD) -write-user-dependencies Alias(MMD) fdeps Alias(M) fdeps= Alias(MF) As per earlier comments: * --write-xxx will be the new long aliases * -fxxx will be documented as "This switch is deprecated; use <short switch> instead" The various --dump-xxx commands will be hashed out later.