diff --git a/2026/2026-07-13-report.org b/2026/2026-07-13-report.org new file mode 100644 index 0000000..6d06643 --- /dev/null +++ b/2026/2026-07-13-report.org @@ -0,0 +1,156 @@ +#+title: Weekly report for 6th of July to 13th of July 2026 +#+author: Philip Herron, Pierre-Emmanuel Patry, Arthur Cohen +#+date: 2026-07-13 + +** Overview + +Thanks again to [[https://opensrcsec.com/][Open Source Security, inc]] and [[https://www.embecosm.com/][Embecosm]] for their ongoing support for this project. + +- Working on extern crate environment +- GSOC students passed their midterm evaluation + +** Completed Activities + +- gccrs: add dyn drop lint [[https://github.com/Rust-GCC/gccrs/pull/4641][PR4641]] +- gccrs: Name resolve external types [[https://github.com/Rust-GCC/gccrs/pull/4700][PR4700]] +- gccrs: Support function-scope drops on normal function exit [[https://github.com/Rust-GCC/gccrs/pull/4591][PR4591]] +- gccrs: Evaluate non-unit tail expressions before drops [[https://github.com/Rust-GCC/gccrs/pull/4602][PR4602]] +- gccrs: add unused doc comment lint [[https://github.com/Rust-GCC/gccrs/pull/4627][PR4627]] +- #[repr(transparent)] initial implementation [[https://github.com/Rust-GCC/gccrs/pull/4650][PR4650]] +- core: Detect whether we are compiling core or any other crate [[https://github.com/Rust-GCC/gccrs/pull/4664][PR4664]] +- gccrs: Handle ribs in GlobbingVisitor [[https://github.com/Rust-GCC/gccrs/pull/4683][PR4683]] +- gccrs: Add compatible version option [[https://github.com/Rust-GCC/gccrs/pull/4659][PR4659]] +- gccrs: Unify node trees [[https://github.com/Rust-GCC/gccrs/pull/4658][PR4658]] +- testsuite: Add regression test for Rust-GCC/gccrs#4116 [[https://github.com/Rust-GCC/gccrs/pull/4691][PR4691]] + +*** Contributors this week + +- [[https://github.com/lucasly-ba][Lucas Ly Ba]] +- [[https://github.com/powerboat9][Owen Avery]] +- [[https://github.com/Polygonalr][Zhi Heng]] +- [[https://github.com/Lishin1215][Janet Chien]] +- [[https://github.com/CohenArthur][Arthur Cohen]] + +*** Overall Task Status + +| Category | Last Week | This Week | Delta | +|-------------+------------+------------+-------| +| TODO | 428 | 429 | +1 | +| In Progress | 128 | 120 | -8 | +| Completed | 1272 | 1277 | +5 | + +*** Bugs + +| Category | Last Week | This Week | Delta | +|-------------+------------+------------+-------| +| TODO | 203 | 202 | -1 | +| In Progress | 52 | 52 | - | +| Completed | 630 | 631 | +1 | + +*** Test Cases + +| TestCases | Last Week | This Week | Delta | +|-----------+------------+------------+-------| +| Passing | 11167 | 11188 | +21 | +| Failed | - | - | - | +| XFAIL | 73 | 73 | - | +| XPASS | - | - | - | + +*** Milestones Progress + +Here is the list of overarching milestones gccrs is currently targeting. We'll use the acronym in the following milestone tables, in the column named "OA Milest.". + +| Milestone | Description | Acronym | +|------------------------------------|----------------------------------------------------------------------------------|---------| +| Embedded Rust 1.49 compiler 0.1 | The compiler is able to compile embedded Rust code | EC 0.1 | +| Embedded Rust 1.49 compiler 1.0 | The compiler is able to compile embedded Rust code and produce valid executables | EC 1.0 | +| Rust-for-Linux compiler 0.1 | The compiler is able to compile the Linux kernel | LC 0.1 | +| Rust-for-Linux compiler 1.0 | The compiler is able to compile the Linux kernel and produce a runnable kernel | LC 1.0 | +| General purpose Rust 1.49 compiler | The compiler passes the Rust 1.49 testsuite, and handles general purpose code | GC | + + +| Milestone | Last Month | This Month | Delta | Start Date | Completion Date | Target | OA Milest. | +|-----------------------------------|------------|------------|-------|---------------|-----------------|---------------|------------| +| Rust-for-Linux | 35% | 40% | +5% | 1st Nov 2025 | - | - | LC 0.1 | +| Full core Late nameres issues | 28% | 28% | - | 1st Dec 2025 | - | - | EC 0.1 | +| Full core Early nameres issues | 97% | 100% | +3% | 1st Dec 2025 | - | - | EC 0.1 | +| Full core Typecheck issues | 12% | 12% | - | 21st Jan 2026 | - | - | EC 0.1 | +| RfL build_error | 100% | 100% | - | - | - | - | LC 0.1 | +| RfL compiler_builtins | 100% | 100% | - | - | - | - | LC 0.1 | +| RfL ffi | 40% | 40% | - | - | - | - | LC 0.1 | +| RfL macros | 0% | 0% | - | - | - | - | LC 0.1 | +| RfL uapi | 0% | 0% | - | - | - | - | LC 0.1 | +| RfL main kernel files | 0% | 0% | - | - | - | - | LC 0.1 | + + +| Upcoming Milestone | Last Month | This Month | Delta | Start Date | Completion Date | Target | OA Milest. | +|-----------------------------------|------------|------------|-------|---------------|-----------------|---------------|------------| +| Unstable RfL features | 0% | 0% | - | 7th Jan 2025 | - | 1st Aug 2025 | LC 0.1 | +| Generic Associated Types | 0% | 0% | - | 15th Mar 2025 | - | 15th Jun 2025 | LC 0.1 | +| RfL const generics | 0% | 0% | - | 1st May 2025 | - | 15th Jun 2025 | LC 0.1 | +| frontend plugin hooks | 0% | 0% | - | 15th May 2025 | - | 7th Jul 2025 | GC | +| Handling the testsuite issues | 0% | 0% | - | 15th Sep 2024 | - | 15th Sep 2025 | GC | +| main shim | 0% | 0% | - | 28th Jul 2025 | - | 15th Sep 2025 | GC | +| Final core attributes | 0% | 0% | - | | - | | EC 0.1 | +| Core nightly features | 0% | 0% | - | | - | | EC 0.1 | +| Defered inference | 0% | 0% | - | | - | | EC 0.1 | +| Fn traits fixes | 0% | 0% | - | | - | | EC 0.1 | +| Recursive types | 0% | 0% | - | | - | | EC 0.1 | +| Drop | 0% | 0% | - | | - | | EC 1.0 | +| Pin, PinInit | 0% | 0% | - | | - | | EC 1.0 | + +| Past Milestone | Last Month | This Month | Delta | Start Date | Completion Date | Target | Target GCC | +|-----------------------------------+------------+------------+-------+---------------+-----------------+---------------|------------| +| Data Structures 1 - Core | 100% | 100% | - | 30th Nov 2020 | 27th Jan 2021 | 29th Jan 2021 | GCC 14.1 | +| Control Flow 1 - Core | 100% | 100% | - | 28th Jan 2021 | 10th Feb 2021 | 26th Feb 2021 | GCC 14.1 | +| Data Structures 2 - Generics | 100% | 100% | - | 11th Feb 2021 | 14th May 2021 | 28th May 2021 | GCC 14.1 | +| Data Structures 3 - Traits | 100% | 100% | - | 20th May 2021 | 17th Sep 2021 | 27th Aug 2021 | GCC 14.1 | +| Control Flow 2 - Pattern Matching | 100% | 100% | - | 20th Sep 2021 | 9th Dec 2021 | 29th Nov 2021 | GCC 14.1 | +| Macros and cfg expansion | 100% | 100% | - | 1st Dec 2021 | 31st Mar 2022 | 28th Mar 2022 | GCC 14.1 | +| Imports and Visibility | 100% | 100% | - | 29th Mar 2022 | 13th Jul 2022 | 27th May 2022 | GCC 14.1 | +| Const Generics | 100% | 100% | - | 30th May 2022 | 10th Oct 2022 | 17th Oct 2022 | GCC 14.1 | +| Initial upstream patches | 100% | 100% | - | 10th Oct 2022 | 13th Nov 2022 | 13th Nov 2022 | GCC 14.1 | +| Upstream initial patchset | 100% | 100% | - | 13th Nov 2022 | 13th Dec 2022 | 19th Dec 2022 | GCC 14.1 | +| Update GCC's master branch | 100% | 100% | - | 1st Jan 2023 | 21st Feb 2023 | 3rd Mar 2023 | GCC 14.1 | +| Final set of upstream patches | 100% | 100% | - | 16th Nov 2022 | 1st May 2023 | 30th Apr 2023 | GCC 14.1 | +| Borrow Checking 1 | 100% | 100% | - | TBD | 8th Jan 2024 | 15th Aug 2023 | GCC 14.1 | +| Procedural Macros 1 | 100% | 100% | - | 13th Apr 2023 | 6th Aug 2023 | 6th Aug 2023 | GCC 14.1 | +| GCC 13.2 Release | 100% | 100% | - | 13th Apr 2023 | 22nd Jul 2023 | 15th Jul 2023 | GCC 14.1 | +| GCC 14 Stage 3 | 100% | 100% | - | 1st Sep 2023 | 20th Sep 2023 | 1st Nov 2023 | GCC 14.1 | +| GCC 14.1 Release | 100% | 100% | - | 2nd Jan 2024 | 2nd Jun 2024 | 15th Apr 2024 | GCC 14.1 | +| format_args!() support | 100% | 100% | - | 15th Feb 2024 | - | 1st Apr 2024 | GCC 14.1 | +| GCC 14.2 | 100% | 100% | - | 7th Jun 2024 | 15th Jun 2024 | 15th Jun 2024 | GCC 14.2 | +| GCC 15.1 | 100% | 100% | - | 21st Jun 2024 | 31st Jun 2024 | 1st Jul 2024 | GCC 15.1 | +| Unhandled attributes | 100% | 100% | - | 1st Jul 2024 | 15th Aug 2024 | 15th Aug 2024 | GCC 15.1 | +| Inline assembly | 100% | 100% | - | 1st Jun 2024 | 26th Aug 2024 | 15th Sep 2024 | GCC 15.1 | +| Rustc Testsuite Adaptor | 100% | 100% | - | 1st Jun 2024 | 26th Aug 2024 | 15th Sep 2024 | GCC 15.1 | +| Borrow checker improvements | 100% | 100% | - | 1st Jun 2024 | 26th Aug 2024 | 15th Sep 2024 | GCC 15.1 | +| Deref and DerefMut improvements | 100% | 100% | - | 28th Sep 2024 | 25th Oct 2024 | 28th Dec 2024 | GCC 15.1 | +| Indexing fixes | 100% | 100% | - | 21st Jul 2024 | 25th Dec 2024 | 15th Nov 2024 | GCC 15.1 | +| Iterator fixes | 100% | 100% | - | 21st Jul 2024 | 25th Dec 2024 | 15th Nov 2024 | GCC 15.1 | +| Auto traits improvements | 100% | 100% | - | 15th Sep 2024 | 20th Jan 2025 | 21st Dec 2024 | GCC 15.1 | +| Lang items | 100% | 100% | - | 1st Jul 2024 | 10th Jan 2025 | 21st Nov 2024 | GCC 15.1 | +| alloc parser issues | 100% | 100% | - | 7th Jan 2025 | 31st Jun 2024 | 28th Jan 2025 | GCC 15.1 | +| std parser issues | 100% | 100% | - | 7th Jan 2025 | 31st Jun 2024 | 28th Jan 2025 | GCC 16.1 | +| Question mark operator | 100% | 100% | - | 15th Dec 2024 | 21st Feb 2025 | 21st Feb 2025 | GCC 15.1 | +| Name resolution 2.0 rework | 100% | 100% | - | 1st Jun 2024 | - | 1st Apr 2025 | GCC 15.1 | +| Macro expansion | 100% | 100% | - | 1st Jun 2024 | - | 1st Jan 2025 | GCC 15.1 | +| Remaining typecheck issues | 100% | 100% | - | 21st Oct 2024 | - | 1st Mar 2025 | GCC 15.1 | +| cfg-core | 100% | 100% | - | 1st Dec 2024 | 24th Mar 2025 | 1st Mar 2025 | GCC 15.1 | +| Codegen fixes | 100% | 100% | - | 7th Oct 2024 | 1st Apr 2025 | 1st Mar 2025 | GCC 15.1 | +| black_box intrinsic | 100% | 100% | - | 28th Oct 2024 | - | 28th Jan 2025 | GCC 15.1 | +| let-else | 100% | 100% | - | 28th Jan 2025 | - | 28th Feb 2025 | GCC 15.1 | +| Specialization | 100% | 100% | - | 1st Jan 2025 | 1st Apr 2025 | 1st Mar 2025 | GCC 15.1 | +| cfg-rfl | 100% | 100% | - | 7th Jan 2025 | 19th Mar 2025 | 15th Feb 2025 | GCC 15.1 | +| Downgrade to Rust 1.49 | 100% | 100% | - | 14th Mar 2025 | 26th Mar 2025 | 1st Apr 2025 | GCC 15.1 | +| try blocks | 100% | 100% | - | | 30th Jul 2025 | | GCC 16.1 | +| while-let loops | 100% | 100% | - | | 30th Jul 2025 | | GCC 16.1 | +| offset_of!() builtin macro | 100% | 100% | - | 15th Mar 2025 | 4th Aug 2025 | 15th Aug 2025 | GCC 16.1 | +| Explicit generics with impl Trait | 100% | 100% | - | 28th Feb 2025 | 21st Jul 2025 | 28th Mar 2025 | GCC 16.1 | +| Final Inline assembly fixes | 100% | 100% | - | | - | | GCC 16.1 | + +** Planned Activities + +- Continue work on extern crate loading + +** Detailed changelog