[GSoC] Trying to find a good topic

Mike Franklin slavo5150 at yahoo.com
Sat Mar 30 10:31:09 UTC 2019


On Friday, 29 March 2019 at 15:35:10 UTC, Dan Printzell wrote:
> On Thursday, 28 March 2019 at 13:00:51 UTC, Mike Franklin wrote:
>> Thumbs up!  This will be great for D in many ways.  I wish you 
>> success.  If there's anything I can do to help in any way, let 
>> me know.  My skills and resources are quite limited, but I'll 
>> do my best.
>
> If you want to you (others are also welcomed) can look through
> my draft to make sure I have not written anything stupid and
> possibly suggest improvements.
>
> https://docs.google.com/document/d/15ba1vC1T7n2vX8kvQVikOj1Ip1-mt-zyiEwd0OYBoQA/edit?usp=sharing

I spent the day today trying to revive my work on `_d_arraycast` 
(https://github.com/dlang/dmd/pull/9516).  I have not worked on D 
in a while, and I didn't realize that the druntime PR 
(https://github.com/dlang/druntime/pull/2264) was pulled, and I 
closed the original DMD PR 
(https://github.com/dlang/dmd/pull/8531).  Since the druntime PR 
was merged, I think I'm on the hook to follow through and finish 
the job.

I encountered an interesting issue that you may encounter in the 
GSoC project, so beware the following.  Since the template will 
be processed through the semantic phase of the compiler, it will 
also be subject to CTFE.  That's a good thing, but with 
`_d_arraycast` I discovered some casts are not supported in CTFE. 
  The error being emitted is "reinterpreting cast from `void[]` to 
`Array*` is not supported in CTFE".

I'm not sure what to do about it and I asked for some ideas.  
Perhaps I may be able to modify the runtime template with some 
`static if (__ctfe)` as a workaround.  Anyway, it will be good to 
be aware of this issue.  I had not previously anticipated it.

Mike


More information about the Digitalmars-d mailing list