Skip to content

Commit 3f786e7

Browse files
committed
2025/10-monthly: Add report for October
1 parent 5162ebc commit 3f786e7

1 file changed

Lines changed: 252 additions & 0 deletions

File tree

Lines changed: 252 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,252 @@
1+
---
2+
layout: post
3+
title: "October 2025 Monthly report"
4+
author: Philip Herron, Pierre-Emmanuel Patry and Arthur Cohen
5+
tags:
6+
- monthly-report
7+
---
8+
9+
## Overview
10+
11+
Thanks again to [Open Source Security, inc](https://opensrcsec.com/) and
12+
[Embecosm](https://www.embecosm.com/) for their ongoing support for this
13+
project.
14+
15+
### Project update
16+
17+
We have started experimenting with compiling Rust-for-Linux, as planned
18+
in our last monthly reports, and we are happy to report very few issues
19+
apart from the ones related to requiring a functional `core` crate. We
20+
then created a new Rust-for-Linux milestone to gather all the missing
21+
functionality required for compiling the Rust parts of the kernel, and
22+
are still collecting issues.
23+
24+
Work on this will continue in parallel with the last few reminaing
25+
bugfixes for `core`. However, due to other Embecosm projects,
26+
Pierre-Emmanuel and Arthur did not have enough time in November to
27+
complete these few remaining bugs.
28+
29+
In other news, our two french interns are progressing really fast and
30+
will soon beging contributing to complete milestones for certain
31+
unhandled features required for Rust-for-Linux and further existing Rust
32+
code. They are very proficient and greatly help the team with the issues
33+
they tackle. For now, they are focusing on non-critical parts of the
34+
pipeline such as emitting warnings in certain conditions and fixing
35+
Internal Compiler Errors.
36+
37+
We have ironed out our upstreaming processes and now rebase gccrs on top
38+
of trunk regularly. Similarly, it is really easy for us to update trunk
39+
with our latest gccrs changes, which we are currently sending upstream
40+
once a week. This caused a few pain points when bootstrapping due to
41+
existing issues in the C++ frontend, but they are now resolved.
42+
43+
Thanks to the work from Marc Poulhies, our CI now sends emails to the
44+
GCC Patches mailing list for each commit merged in our development
45+
repository on github. This makes it easy for GCC hackers to interact
46+
with our Rust frontend and review patches as they come in. We have been
47+
testing the system for a month now, and Marc has ironed out the kinks,
48+
meaning it will be deployed on the 10th of November after a message
49+
explaining the steps on the GCC mailing lists.
50+
51+
### Community call
52+
53+
We will have our next monthly community call on the 17th of November at
54+
10am UTC. You can subscribe to our calendar to see when the next one
55+
will be held. The call is open to everyone, even if you would just like
56+
to sit-in and listen. You can also subscribe to our
57+
[mailing-list](https://gcc.gnu.org/mailman/listinfo/gcc-rust) or join
58+
our [Zulip chat](https://gcc-rust.zulipchat.com) to be notified of
59+
upcoming events.
60+
61+
- [Jitsi link](https://meet.jit.si/gccrs-community-call-november)
62+
- Calendar ID:
63+
7060a0923ffebd3cb52b1afef35a28ff7b64f05962c9af84c23b1847f1f5f894@group.calendar.google.com
64+
- [Google calendar
65+
link](https://calendar.google.com/calendar/embed?src=7060a0923ffebd3cb52b1afef35a28ff7b64f05962c9af84c23b1847f1f5f894%40group.calendar.google.com)
66+
- [iCal
67+
link](https://calendar.google.com/calendar/ical/7060a0923ffebd3cb52b1afef35a28ff7b64f05962c9af84c23b1847f1f5f894%40group.calendar.google.com/public/basic.ics)
68+
69+
## Call for contribution
70+
71+
- <https://github.com/Rust-GCC/gccrs/issues/2500>
72+
73+
- <https://github.com/Rust-GCC/gccrs/issues/2376>
74+
75+
## Completed Activities
76+
77+
- gccrs: Fix segv in errors in type checking an impl item
78+
[PR4274](https://github.com/rust-gcc/gccrs/pull/4274)
79+
- gccrs: Support generic constant impl items
80+
[PR4273](https://github.com/rust-gcc/gccrs/pull/4273)
81+
- gccrs: Fix const generics handling on array types
82+
[PR4272](https://github.com/rust-gcc/gccrs/pull/4272)
83+
- gccrs: fix error multiple cfg predicates
84+
[PR4268](https://github.com/rust-gcc/gccrs/pull/4268)
85+
- gccrs: fix cfg attribute error with literal predicate
86+
[PR4266](https://github.com/rust-gcc/gccrs/pull/4266)
87+
- gccrs: fix segfault with empty cfg attribute
88+
[PR4263](https://github.com/rust-gcc/gccrs/pull/4263)
89+
- gccrs: Add support for binding const generic values to paths
90+
[PR4253](https://github.com/rust-gcc/gccrs/pull/4253)
91+
- Sync with upstream (2025-10-31):
92+
468f8a3df1cd9e63b38cd4855926e9507b916fd0
93+
[PR4251](https://github.com/rust-gcc/gccrs/pull/4251)
94+
- gccrs: Fix ICE with non-trailing const defaults
95+
[PR4250](https://github.com/rust-gcc/gccrs/pull/4250)
96+
- Sync with upstream (2025-10-27):
97+
9e10fc177be25e5430e72a5c55ce7a36c45562c3
98+
[PR4248](https://github.com/rust-gcc/gccrs/pull/4248)
99+
- gccrs: Add minus sign compilation for LiteralPattern
100+
[PR4247](https://github.com/rust-gcc/gccrs/pull/4247)
101+
- gccrs: Fix negative bounds in \`RangePattern\` being handled
102+
incorrectly [PR4243](https://github.com/rust-gcc/gccrs/pull/4243)
103+
- gccrs: Fix ICE on enum in tuple struct pattern
104+
[PR4241](https://github.com/rust-gcc/gccrs/pull/4241)
105+
- Update tuple pattern type-check to attempt to continue resolving
106+
items after size error
107+
[PR4239](https://github.com/rust-gcc/gccrs/pull/4239)
108+
- Fix ICE for repr attribute malformation
109+
[PR4238](https://github.com/rust-gcc/gccrs/pull/4238)
110+
- gccrs: make invalid inner attributes show error
111+
[PR4237](https://github.com/rust-gcc/gccrs/pull/4237)
112+
- ci: stop using pull<sub>request</sub> event, use push
113+
[PR4224](https://github.com/rust-gcc/gccrs/pull/4224)
114+
- gccrs: fix inner attr derive doesn't show error
115+
[PR4218](https://github.com/rust-gcc/gccrs/pull/4218)
116+
- gccrs: fix segfault on exported macro
117+
[PR4215](https://github.com/rust-gcc/gccrs/pull/4215)
118+
- Bump clang-format version to use in CONTRIBUTING.md
119+
[PR4208](https://github.com/rust-gcc/gccrs/pull/4208)
120+
- gccrs: fix ICE on missing pattern in while loop
121+
[PR4207](https://github.com/rust-gcc/gccrs/pull/4207)
122+
- gccrs: fix ICE in TyVar constructor
123+
[PR4206](https://github.com/rust-gcc/gccrs/pull/4206)
124+
- gccrs: Emit error when tuple-indexing on non-tuples
125+
[PR4205](https://github.com/rust-gcc/gccrs/pull/4205)
126+
- ci: refactor conditional parts
127+
[PR4202](https://github.com/rust-gcc/gccrs/pull/4202)
128+
- gccrs: Refactor TyTy::ConstType into separate types
129+
[PR4199](https://github.com/rust-gcc/gccrs/pull/4199)
130+
- fix: early return for module file error in AST parsing
131+
[PR4151](https://github.com/rust-gcc/gccrs/pull/4151)
132+
- Improve macro expansion for \`libcore\`
133+
[PR4053](https://github.com/rust-gcc/gccrs/pull/4053)
134+
135+
### Contributors this month
136+
137+
- [Lucas Ly Ba](https://github.com/lucasly-ba) (new contributor!)
138+
- [Lenny Chiadmi-Delage](https://github.com/Villosse) (new
139+
contributor!)
140+
- [LowR](https://github.com/lowr) (new contributor!)
141+
- [Lishin](https://github.com/Lishin1215) (new contributor!)
142+
- [elle](https://github.com/0xllx0)
143+
- [Vishruth Thimmaiah](https://github.com/vishruth-thimmaiah)
144+
- [Zhi Heng](https://github.com/Polygonalr)
145+
- [Marc Poulhiès](https://github.com/dkm)
146+
- [Owen Avery](https://github.com/powerboat9)
147+
- [Pierre-Emmanuel Patry](https://github.com/P-E-P)
148+
- [Philip Herron](https://github.com/philberty)
149+
- [Arthur Cohen](https://github.com/CohenArthur)
150+
151+
### Overall Task Status
152+
153+
| Category | Last Month | This Month | Delta |
154+
|-------------|------------|------------|-------|
155+
| TODO | 406 | 418 | +12 |
156+
| In Progress | 115 | 115 | \- |
157+
| Completed | 1154 | 1177 | +23 |
158+
159+
### Bugs
160+
161+
| Category | Last Month | This Month | Delta |
162+
|-------------|------------|------------|-------|
163+
| TODO | 207 | 197 | -10 |
164+
| In Progress | 55 | 55 | \- |
165+
| Completed | 572 | 586 | +14 |
166+
167+
### Test Cases
168+
169+
| TestCases | Last Month | This Month | Delta |
170+
|-----------|------------|------------|-------|
171+
| Passing | 10304 | 10458 | +154 |
172+
| Failed | \- | \- | \- |
173+
| XFAIL | 72 | 74 | +2 |
174+
| XPASS | \- | \- | \- |
175+
176+
### Milestones Progress
177+
178+
| Milestone | Last Month | This Month | Delta | Start Date | Completion Date | Target | Target GCC |
179+
|----------------|------------|------------|-------|--------------|-----------------|--------|------------|
180+
| Rust-for-Linux | 0% | 0% | \- | 1st Nov 2025 | \- | \- | GCC 16.1 |
181+
182+
| Upcoming Milestone | Last Month | This Month | Delta | Start Date | Completion Date | Target | Target GCC |
183+
|-------------------------------|------------|------------|-------|---------------|-----------------|---------------|------------|
184+
| Unstable RfL features | 0% | 0% | \- | 7th Jan 2025 | \- | 1st Aug 2025 | GCC 16.1 |
185+
| Generic Associated Types | 0% | 0% | \- | 15th Mar 2025 | \- | 15th Jun 2025 | GCC 16.1 |
186+
| RfL const generics | 0% | 0% | \- | 1st May 2025 | \- | 15th Jun 2025 | GCC 16.1 |
187+
| frontend plugin hooks | 0% | 0% | \- | 15th May 2025 | \- | 7th Jul 2025 | GCC 16.1 |
188+
| Handling the testsuite issues | 0% | 0% | \- | 15th Sep 2024 | \- | 15th Sep 2025 | GCC 16.1 |
189+
| main shim | 0% | 0% | \- | 28th Jul 2025 | \- | 15th Sep 2025 | GCC 16.1 |
190+
| Final core attributes | 0% | 0% | \- | | \- | | GCC 16.1 |
191+
| Core nightly features | 0% | 0% | \- | | \- | | GCC 16.1 |
192+
| Defered inference | 0% | 0% | \- | | \- | | GCC 16.1 |
193+
| Fn traits fixes | 0% | 0% | \- | | \- | | GCC 16.1 |
194+
| Recursive types | 0% | 0% | \- | | \- | | GCC 16.1 |
195+
| Drop | 0% | 0% | \- | | \- | | GCC 16.1 |
196+
| Pin, PinInit | 0% | 0% | \- | | \- | | GCC 16.1 |
197+
198+
| Past Milestone | Last Month | This Month | Delta | Start Date | Completion Date | Target | Target GCC |
199+
|--------------------------------------|------------|------------|-------|---------------|-----------------|---------------|------------|
200+
| Data Structures 1 - Core | 100% | 100% | \- | 30th Nov 2020 | 27th Jan 2021 | 29th Jan 2021 | GCC 14.1 |
201+
| Control Flow 1 - Core | 100% | 100% | \- | 28th Jan 2021 | 10th Feb 2021 | 26th Feb 2021 | GCC 14.1 |
202+
| Data Structures 2 - Generics | 100% | 100% | \- | 11th Feb 2021 | 14th May 2021 | 28th May 2021 | GCC 14.1 |
203+
| Data Structures 3 - Traits | 100% | 100% | \- | 20th May 2021 | 17th Sep 2021 | 27th Aug 2021 | GCC 14.1 |
204+
| Control Flow 2 - Pattern Matching | 100% | 100% | \- | 20th Sep 2021 | 9th Dec 2021 | 29th Nov 2021 | GCC 14.1 |
205+
| Macros and cfg expansion | 100% | 100% | \- | 1st Dec 2021 | 31st Mar 2022 | 28th Mar 2022 | GCC 14.1 |
206+
| Imports and Visibility | 100% | 100% | \- | 29th Mar 2022 | 13th Jul 2022 | 27th May 2022 | GCC 14.1 |
207+
| Const Generics | 100% | 100% | \- | 30th May 2022 | 10th Oct 2022 | 17th Oct 2022 | GCC 14.1 |
208+
| Initial upstream patches | 100% | 100% | \- | 10th Oct 2022 | 13th Nov 2022 | 13th Nov 2022 | GCC 14.1 |
209+
| Upstream initial patchset | 100% | 100% | \- | 13th Nov 2022 | 13th Dec 2022 | 19th Dec 2022 | GCC 14.1 |
210+
| Update GCC's master branch | 100% | 100% | \- | 1st Jan 2023 | 21st Feb 2023 | 3rd Mar 2023 | GCC 14.1 |
211+
| Final set of upstream patches | 100% | 100% | \- | 16th Nov 2022 | 1st May 2023 | 30th Apr 2023 | GCC 14.1 |
212+
| Borrow Checking 1 | 100% | 100% | \- | TBD | 8th Jan 2024 | 15th Aug 2023 | GCC 14.1 |
213+
| Procedural Macros 1 | 100% | 100% | \- | 13th Apr 2023 | 6th Aug 2023 | 6th Aug 2023 | GCC 14.1 |
214+
| GCC 13.2 Release | 100% | 100% | \- | 13th Apr 2023 | 22nd Jul 2023 | 15th Jul 2023 | GCC 14.1 |
215+
| GCC 14 Stage 3 | 100% | 100% | \- | 1st Sep 2023 | 20th Sep 2023 | 1st Nov 2023 | GCC 14.1 |
216+
| GCC 14.1 Release | 100% | 100% | \- | 2nd Jan 2024 | 2nd Jun 2024 | 15th Apr 2024 | GCC 14.1 |
217+
| format<sub>args</sub>!() support | 100% | 100% | \- | 15th Feb 2024 | \- | 1st Apr 2024 | GCC 14.1 |
218+
| GCC 14.2 | 100% | 100% | \- | 7th Jun 2024 | 15th Jun 2024 | 15th Jun 2024 | GCC 14.2 |
219+
| GCC 15.1 | 100% | 100% | \- | 21st Jun 2024 | 31st Jun 2024 | 1st Jul 2024 | GCC 15.1 |
220+
| Unhandled attributes | 100% | 100% | \- | 1st Jul 2024 | 15th Aug 2024 | 15th Aug 2024 | GCC 15.1 |
221+
| Inline assembly | 100% | 100% | \- | 1st Jun 2024 | 26th Aug 2024 | 15th Sep 2024 | GCC 15.1 |
222+
| Rustc Testsuite Adaptor | 100% | 100% | \- | 1st Jun 2024 | 26th Aug 2024 | 15th Sep 2024 | GCC 15.1 |
223+
| Borrow checker improvements | 100% | 100% | \- | 1st Jun 2024 | 26th Aug 2024 | 15th Sep 2024 | GCC 15.1 |
224+
| Deref and DerefMut improvements | 100% | 100% | \- | 28th Sep 2024 | 25th Oct 2024 | 28th Dec 2024 | GCC 15.1 |
225+
| Indexing fixes | 100% | 100% | \- | 21st Jul 2024 | 25th Dec 2024 | 15th Nov 2024 | GCC 15.1 |
226+
| Iterator fixes | 100% | 100% | \- | 21st Jul 2024 | 25th Dec 2024 | 15th Nov 2024 | GCC 15.1 |
227+
| Auto traits improvements | 100% | 100% | \- | 15th Sep 2024 | 20th Jan 2025 | 21st Dec 2024 | GCC 15.1 |
228+
| Lang items | 100% | 100% | \- | 1st Jul 2024 | 10th Jan 2025 | 21st Nov 2024 | GCC 15.1 |
229+
| alloc parser issues | 100% | 100% | \- | 7th Jan 2025 | 31st Jun 2024 | 28th Jan 2025 | GCC 15.1 |
230+
| std parser issues | 100% | 100% | \- | 7th Jan 2025 | 31st Jun 2024 | 28th Jan 2025 | GCC 16.1 |
231+
| Question mark operator | 100% | 100% | \- | 15th Dec 2024 | 21st Feb 2025 | 21st Feb 2025 | GCC 15.1 |
232+
| Name resolution 2.0 rework | 100% | 100% | \- | 1st Jun 2024 | \- | 1st Apr 2025 | GCC 15.1 |
233+
| Macro expansion | 100% | 100% | \- | 1st Jun 2024 | \- | 1st Jan 2025 | GCC 15.1 |
234+
| Remaining typecheck issues | 100% | 100% | \- | 21st Oct 2024 | \- | 1st Mar 2025 | GCC 15.1 |
235+
| cfg-core | 100% | 100% | \- | 1st Dec 2024 | 24th Mar 2025 | 1st Mar 2025 | GCC 15.1 |
236+
| Codegen fixes | 100% | 100% | \- | 7th Oct 2024 | 1st Apr 2025 | 1st Mar 2025 | GCC 15.1 |
237+
| black<sub>box</sub> intrinsic | 100% | 100% | \- | 28th Oct 2024 | \- | 28th Jan 2025 | GCC 15.1 |
238+
| let-else | 100% | 100% | \- | 28th Jan 2025 | \- | 28th Feb 2025 | GCC 15.1 |
239+
| Specialization | 100% | 100% | \- | 1st Jan 2025 | 1st Apr 2025 | 1st Mar 2025 | GCC 15.1 |
240+
| cfg-rfl | 100% | 100% | \- | 7th Jan 2025 | 19th Mar 2025 | 15th Feb 2025 | GCC 15.1 |
241+
| Downgrade to Rust 1.49 | 100% | 100% | \- | 14th Mar 2025 | 26th Mar 2025 | 1st Apr 2025 | GCC 15.1 |
242+
| try blocks | 100% | 100% | \- | | 30th Jul 2025 | | GCC 16.1 |
243+
| while-let loops | 100% | 100% | \- | | 30th Jul 2025 | | GCC 16.1 |
244+
| offset<sub>of</sub>!() builtin macro | 100% | 100% | \- | 15th Mar 2025 | 4th Aug 2025 | 15th Aug 2025 | GCC 16.1 |
245+
| Explicit generics with impl Trait | 100% | 100% | \- | 28th Feb 2025 | 21st Jul 2025 | 28th Mar 2025 | GCC 16.1 |
246+
| Final Inline assembly fixes | 100% | 100% | \- | | \- | | GCC 16.1 |
247+
248+
## Planned Activities
249+
250+
- Finish debugging `core`
251+
- Continue collecting issues for Rust-for-Linux milestones
252+
- Work on RfL issues

0 commit comments

Comments
 (0)