[ABI] 128bit integers and other vendor types

Daniel Murphy via Digitalmars-d digitalmars-d at puremagic.com
Mon Jul 28 12:02:26 PDT 2014


"H. S. Teoh via Digitalmars-d"  wrote in message 
news:mailman.124.1406572776.16021.digitalmars-d at puremagic.com...

> I see this as a good thing, actually. Not that I think it's good to
> increase compile time and binary bloat, but that when this happens, we
> will have very strong incentives to do something about it, that will
> drive us to do whatever it takes for Phobos to *not* get in the way of
> fast compile times and to *not* introduce tons of template bloat. The
> end result will be a far better quality Phobos than we might ever
> achieve otherwise, since external D codebases wouldn't be as strong an
> incentive as the compiler itself would.

I do not see it that way.  Once phobos quality is acceptable, then we can 
think about using it in dmd.  As much as I want phobos to be as good as 
possible, this cannot in any way come at the expense of the compiler's 
quality.

> Perhaps the solution is to get more people involved in this review?
> Y'know, increase the bus factor and everything.

Do you mean dmd contributors should be reviewing phobos pulls instead of 
working on dmd?

> Would it be too unrealistic to set things up so that ddmd bootstraps
> itself with a *previous* release of Phobos, and then compile itself
> again with the latest Phobos git HEAD? (And by this I mean that `make -f
> posix.mak` will actually run through this bootstrap process, so that if
> something breaks, it will be very obvious in the autotester and we
> wouldn't pull whatever PR it is that caused the breakage.) This would
> ensure that whatever we do, ddmd won't become uncompilable with a
> previous release of itself, but will be effectively written in a prior
> version of D (or ideally, in the common subset of D between the two
> releases, or N releases if we decide to do that).

Yes, this one can be solved somewhat by improving test infrastructure.  But 
it will tie the parts of phobos that dmd uses to dmd's release cycle.

eg if we add a new built-in attribute, it can't be used in phobos until the 
last compiler that doesn't support it is no longer supported for building 
dmd.  Same for every compiler patch.

It would also be nice to keep compatibility further back than a single dmd 
release.  This would make things harder. 



More information about the Digitalmars-d mailing list