QtD is suspended

Max Samukha spambox at d-coding.com
Thu Sep 16 12:37:00 PDT 2010


On 09/16/2010 06:44 PM, Andrei Alexandrescu wrote:
> On 9/16/10 9:22 CDT, Max Samukha wrote:
>> After a good amount of hesitation, we have decided to put the QtD
>> project on hold. QtD has a potential to become a complete and effective
>> development platform for D but it is not going to happen soon (unless
>> people with harder hearts take it over). We have spent half of the day
>> hunting yet another dmd bug-o-feature and that is the last straw.
>>
>> We offer our apologies to people who put their hope upon the project.
>> Please come back in a year or two when the language has a stable
>> compiler with the features fully specified, implemented and debugged.
>
> Hi Max,
>
> Sorry to hear that. Was this an issue of many small annoyances or a few
> big ones?
>
> Thanks,
>
> Andrei

Hi Andrei,

Both, I guess. The recent big one is the unspecified behavior of 
postblit on const/immutable structs and overloading by rvalue/lvalue. 
Specifically, we were bending the generator into generating Qt value 
types as structs and hit two problems:

1. The generated __cpctor (which does the blit and calls the postblit) 
is always non-const and takes a non-const reference to the original. 
That means copy-construction of const objects is impossible without casts.

To proceed, we had to hack the compiler so that __cpctor took a const 
original reference and was called on a mutable target reference. That 
seemed to work but left us in uncertainty: how it actually should and 
will work?

2. A bug in the compiler doesn't allow us to overload struct parameters 
by ref-ness. So we had to generate by-value parameters where Qt has them 
by reference.

And today we've encountered two other bugs in sequence. One was about 
the impossibility to access a template instance member from within a 
struct nested in another struct and the second didn't give any line/file 
information.

We could probably work around or ignore all these problems but I think 
it is starting to take more time and nerve than we can afford.


More information about the Digitalmars-d-announce mailing list