I agree with striving to remove legacy code. 
The problem I see with the current solution is that there is no migration path. The preview switch has the appearance of an optional thing, but it isn't. Editing dmd/ldc2.conf is not a viable hard requirement in order to use plplot. 

The bigger problem that I see is that we are making D compilation compile flags even more awkward. The noXlinker option means the user has to pass to dmd a gcc option ("-Xlinker") in order to pass a flag to the linker....?! 

It's nice there is some sort of solution for the plplot issue. But I'm happy I don't have to implement and maintain the logic of figuring out in a cmake script which dmd version is used, or ldc, or gdc, or what flag is put in dmd.conf that changes cmdline behavior,............. 

-Johan 


On Thu, Sep 26, 2019, 07:46 Mike Franklin via dmd-internals <dmd-internals@puremagic.com> wrote:
Johan,

Yes, users opting into the option with `-preview=noXlinker` will need to fully opt into it.  So it will be best for them to just add `-preview=noXlinker` and other adjustments to their dmd.conf file.

The reason I chose not to implement `-Xcc` is because we have too many ways of doing the same thing. The code is becoming difficult to learn and maintain as we try to carry forward the design decisions of the past indefinitely.  I'm sure you and others will disagree, but I think it is best to invest with the hope that someday we can delete legacy code, not continue to add to it.

Mike

On Thursday, September 26, 2019, 2:39:16 PM GMT+9, Johan Engelen via dmd-internals <dmd-internals@puremagic.com> wrote:


On Thu, Sep 26, 2019 at 4:13 AM Alan W. Irwin via dmd-internals <dmd-internals@puremagic.com> wrote:

I spoke too soon (sigh) about this new -preview=noXlinker option
actually working, see <https://issues.dlang.org/show_bug.cgi?id=20244
>.

Reading that bug report, it appears to me that this is not a simple "preview" option: dmd.conf may need adjustment and thus the user cannot simply switch between the option being on or off. Why not implement LDC's -Xcc as well?

-Johan


 
_______________________________________________
dmd-internals mailing list
dmd-internals@puremagic.com
http://lists.puremagic.com/mailman/listinfo/dmd-internals
_______________________________________________
dmd-internals mailing list
dmd-internals@puremagic.com
http://lists.puremagic.com/mailman/listinfo/dmd-internals