Last week we began work on imports/visibility; it was a quiet week of figuring things out since much of this milestone was started in the previous year by the community, including implementing module support and multiple files. However, this week, some work is needed to determine our milestone progress for these reports accurately so we have left the milestone as no progress change for now.
In other news, we started receiving GSoC draft proposals from interested students on zulip, which we are very excited about!
Bugfix makefile not installing compiler driver when cross-compiling PR1092
Fix out of memory issue on huge array constructors PR1087
Keep up to date with the Rust language on a regular basis
Going over target dates
Maintain status reports and issue tracking to stakeholders
Continue work into privacy pass
Continue work on metadata exports
Merge outstanding PR backlog
Iterators lang items
Recently as part of our testing effort to use the rustc testsuite we hit upon a rustc testcase that tries to allocate a 4tb array on the stack. This testcase was designed to detect an out-of-memory case in the rustc compiler rust-lang/rust#66342 we also had this failure in our implementation. The error here is due to the fact for copied array constructors we created a constructor expression of the specified number of elements. This means we create a huge vector in memory at compile time which is inefficent. Though if we follow how the GCC D front-end handles this we can use a loop to initilize the memory and allow the GCC middle-end to optimize this using a memset. The only caveat here is that this is not possible in a const context.