Skip to content

Commit 1f8d813

Browse files
committed
2023-08-21-report: Add base for report
1 parent 7902796 commit 1f8d813

File tree

1 file changed

+140
-0
lines changed

1 file changed

+140
-0
lines changed

2023-08-21-report.org

Lines changed: 140 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,140 @@
1+
#+title: Weekly report for 7th of August 2023 to 21st of August 2023
2+
#+author: Philip Herron, Pierre-Emmanuel Patry, Arthur Cohen
3+
#+date: 2023-08-21
4+
5+
** Overview
6+
7+
Thanks again to [[https://opensrcsec.com/][Open Source Security, inc]] and [[https://www.embecosm.com/][Embecosm]] for their ongoing support for this project.
8+
9+
*** Milestone Progress
10+
11+
1. Late name resolution underway
12+
1. Good work from PE on complex macro-invocation-expands-to-macro-definition case
13+
2. Resolve `use` statements
14+
3. Fill out existing mappings
15+
4. Figured out last little bit of info for what is needed by the typechecker
16+
2. GSoC is almost over!
17+
1. More errors, contributor will keep going after GSoC ends, super succesful
18+
2. Deep into second part of the project, adding punycode encoding to our name mangling algorithm, super useful
19+
3. 40 PRs merged in two weeks, quite nice - mostly due to GSoC
20+
4. Lots of cleanup in our backend too
21+
22+
** Completed Activities
23+
24+
- [E0164] Neither tuple struct nor tuple variant used as a pattern [[https://github.com/rust-gcc/gccrs/pull/2565][PR2565]]
25+
- [E0391] Detected type dependency cycle [[https://github.com/rust-gcc/gccrs/pull/2561][PR2561]]
26+
- [E0034] found more than one items for method [[https://github.com/rust-gcc/gccrs/pull/2560][PR2560]]
27+
- [E0535] Unknown argument given to inline attribute [[https://github.com/rust-gcc/gccrs/pull/2559][PR2559]]
28+
- [E0534] inline attribute was malformed [[https://github.com/rust-gcc/gccrs/pull/2558][PR2558]]
29+
- Non-allowed default type paramters [[https://github.com/rust-gcc/gccrs/pull/2556][PR2556]]
30+
- Handle gengtype annotations in ```rust-constexpr.cc``` [[https://github.com/rust-gcc/gccrs/pull/2554][PR2554]]
31+
- gccrs: improve name mangling hash [[https://github.com/rust-gcc/gccrs/pull/2551][PR2551]]
32+
- gccrs: simplify matching possible candidates [[https://github.com/rust-gcc/gccrs/pull/2550][PR2550]]
33+
- gccrs: remove horrible hack in solving complex generics on impl blocks [[https://github.com/rust-gcc/gccrs/pull/2549][PR2549]]
34+
- gccrs: Fix legacy mangling to use Unicode escape [[https://github.com/rust-gcc/gccrs/pull/2547][PR2547]]
35+
- Add missing ```CHECKING_P``` guard to ```rust-punycode.cc``` [[https://github.com/rust-gcc/gccrs/pull/2546][PR2546]]
36+
- gccrs: Cleanup HIR dump [[https://github.com/rust-gcc/gccrs/pull/2544][PR2544]]
37+
- gccrs: Adjust HIR dump for IfExpr and IfExprConseqElse [[https://github.com/rust-gcc/gccrs/pull/2543][PR2543]]
38+
- Support for `rich-loc` & `errorcode` in parser & expansion errors [[https://github.com/rust-gcc/gccrs/pull/2542][PR2542]]
39+
- Basic formatting/comment fixes [[https://github.com/rust-gcc/gccrs/pull/2540][PR2540]]
40+
- [E0107] Wrong number of generic argument [[https://github.com/rust-gcc/gccrs/pull/2539][PR2539]]
41+
- [E0015] Use of non-const inside const [[https://github.com/rust-gcc/gccrs/pull/2538][PR2538]]
42+
- [E0658] Use of mutable reference in constant functions. [[https://github.com/rust-gcc/gccrs/pull/2536][PR2536]]
43+
- Add punycode encoding to v0 mangling [[https://github.com/rust-gcc/gccrs/pull/2535][PR2535]]
44+
- [E0412] used type name not in scope [[https://github.com/rust-gcc/gccrs/pull/2534][PR2534]]
45+
- Implement punycode encoding [[https://github.com/rust-gcc/gccrs/pull/2533][PR2533]]
46+
- Fix a warning about extra semicolon [[https://github.com/rust-gcc/gccrs/pull/2532][PR2532]]
47+
- [E0753] Use of inner doc comment in invalid context [[https://github.com/rust-gcc/gccrs/pull/2531][PR2531]]
48+
- Move Codepoint to gcc/rust/util/ [[https://github.com/rust-gcc/gccrs/pull/2530][PR2530]]
49+
- Add type annotation to make-rust-unicode-data.py [[https://github.com/rust-gcc/gccrs/pull/2529][PR2529]]
50+
- `[E0054-E0604-E0620-E0606]` TypeCasting ErrorCodes [[https://github.com/rust-gcc/gccrs/pull/2528][PR2528]]
51+
- [E0380] Use of auto trait with method or associated item [[https://github.com/rust-gcc/gccrs/pull/2527][PR2527]]
52+
- [E0541] Use of unknown meta item [[https://github.com/rust-gcc/gccrs/pull/2526][PR2526]]
53+
- [E0308] array misamatch types [[https://github.com/rust-gcc/gccrs/pull/2525][PR2525]]
54+
- [E0282] type annotations needed [[https://github.com/rust-gcc/gccrs/pull/2524][PR2524]]
55+
- macro-expand: Keep optional references to last_{def, invoc} [[https://github.com/rust-gcc/gccrs/pull/2520][PR2520]]
56+
- [E0703] Use of Invalid ABI [[https://github.com/rust-gcc/gccrs/pull/2519][PR2519]]
57+
- diagnostics: Fix mismatch between new[] and free [[https://github.com/rust-gcc/gccrs/pull/2518][PR2518]]
58+
- Fix lexer exponential on tuple [[https://github.com/rust-gcc/gccrs/pull/2515][PR2515]]
59+
- Remove ```Backend::bool_type``` and ```Backend::char_type``` [[https://github.com/rust-gcc/gccrs/pull/2506][PR2506]]
60+
- Move ```Backend::error_variable``` to ```Bvariable::error_variable``` [[https://github.com/rust-gcc/gccrs/pull/2505][PR2505]]
61+
- Remove unneeded references to ```this``` in backend methods [[https://github.com/rust-gcc/gccrs/pull/2503][PR2503]]
62+
- Use ```MacroInvocLexerBase``` in ```ProcMacroInvocLexer``` [[https://github.com/rust-gcc/gccrs/pull/2498][PR2498]]
63+
- Normalize all identifiers to NFC [[https://github.com/rust-gcc/gccrs/pull/2489][PR2489]]
64+
65+
*** Contributors this week
66+
67+
- [[https://github.com/dkm][Marc Poulhiès]]
68+
- [[https://github.com/mahadmuhammad][Mahad Muhammad]]
69+
- [[https://github.com/tamaroning][Raiki Tamura]]
70+
- [[https://github.com/powerboat9][Owen Avery]]
71+
72+
*** Overall Task Status
73+
74+
| Category | Last Week | This Week | Delta |
75+
|-------------+-----------+-----------+-------|
76+
| TODO | 255 | 259 | +4 |
77+
| In Progress | 55 | 56 | +1 |
78+
| Completed | 708 | 730 | +22 |
79+
80+
*** Test Cases
81+
82+
| TestCases | Last Week | This Week | Delta |
83+
|-----------+-----------+-----------+-------|
84+
| Passing | 8116 | 8129 | +22 |
85+
| Failed | - | - | - |
86+
| XFAIL | 69 | 69 | - |
87+
| XPASS | - | - | - |
88+
89+
*** Bugs
90+
91+
| Category | Last Week | This Week | Delta |
92+
|-------------+-----------+-----------+-------|
93+
| TODO | 93 | 95 | +2 |
94+
| In Progress | 25 | 29 | +4 |
95+
| Completed | 349 | 359 | +10 |
96+
97+
*** Milestones Progress
98+
99+
Note that the intrinsics milestone percentage on github is not representative: It shows a 73% completion rate, but does not take into account the tracking issues with dozens of unresolved items.
100+
Thus the percentage is computed using the sum of issues and tracked items done divided by the sums of issues and tracked items overall.
101+
102+
| Milestone | Last Month | This Month | Delta | Start Date | Completion Date | Target |
103+
|-----------------------------------+------------+------------+-------+---------------+-----------------+---------------|
104+
| Data Structures 1 - Core | 100% | 100% | - | 30th Nov 2020 | 27th Jan 2021 | 29th Jan 2021 |
105+
| Control Flow 1 - Core | 100% | 100% | - | 28th Jan 2021 | 10th Feb 2021 | 26th Feb 2021 |
106+
| Data Structures 2 - Generics | 100% | 100% | - | 11th Feb 2021 | 14th May 2021 | 28th May 2021 |
107+
| Data Structures 3 - Traits | 100% | 100% | - | 20th May 2021 | 17th Sep 2021 | 27th Aug 2021 |
108+
| Control Flow 2 - Pattern Matching | 100% | 100% | - | 20th Sep 2021 | 9th Dec 2021 | 29th Nov 2021 |
109+
| Macros and cfg expansion | 100% | 100% | - | 1st Dec 2021 | 31st Mar 2022 | 28th Mar 2022 |
110+
| Imports and Visibility | 100% | 100% | - | 29th Mar 2022 | 13th Jul 2022 | 27th May 2022 |
111+
| Const Generics | 100% | 100% | - | 30th May 2022 | 10th Oct 2022 | 17th Oct 2022 |
112+
| Initial upstream patches | 100% | 100% | - | 10th Oct 2022 | 13th Nov 2022 | 13th Nov 2022 |
113+
| Upstream initial patchset | 100% | 100% | - | 13th Nov 2022 | 13th Dec 2022 | 19th Dec 2022 |
114+
| Update GCC's master branch | 100% | 100% | - | 1st Jan 2023 | 21st Feb 2023 | 3rd Mar 2023 |
115+
| Final set of upstream patches | 100% | 100% | - | 16th Nov 2022 | 1st May 2023 | 30th Apr 2023 |
116+
| Borrow Checking 1 | 0% | 0% | - | TBD | - | 15th Aug 2023 |
117+
| AST Pipeline for libcore 1.49 | 76% | 77% | +1% | 13th Apr 2023 | - | 1st Jul 2023 |
118+
| HIR Pipeline for libcore 1.49 | 67% | 67% | - | 13th Apr 2023 | - | TBD |
119+
| Procedural Macros 1 | 85% | 85% | - | 13th Apr 2023 | - | 6th Aug 2023 |
120+
| GCC 13.2 Release | 100% | 100% | - | 13th Apr 2023 | 18th Jul 2023 | 15th Jul 2023 |
121+
| GCC 14 Stage 3 | 0% | 0% | - | TBD | - | 1st Nov 2023 |
122+
| core 1.49 functionality [AST] | 4% | 0% | - | 1st Jul 2023 | - | 1st Nov 2023 |
123+
| Rustc Testsuite Prerequisistes | 0% | 0% | - | TBD | - | 1st Sep 2023 |
124+
| Intrinsics and builtins | 18% | 18% | - | 6th Sep 2022 | - | TBD |
125+
| Const Generics 2 | 0% | 0% | - | TBD | - | TBD |
126+
| Rust-for-Linux compilation | 0% | 0% | - | TBD | - | TBD |
127+
128+
*** Risks
129+
130+
| Risk | Impact (1-3) | Likelihood (0-10) | Risk (I * L) | Mitigation |
131+
|-------------------------------------+--------------+-------------------+--------------+-------------------------------------|
132+
| `core` and `std` missing for GCC 14 | 2 | 6 | 12 | Look at necessary unstable features |
133+
134+
** Planned Activities
135+
136+
- Fix remaining bits or procedural macro name resolution.
137+
- Name resolve macro name that have not yet been expanded (nested macro definition)
138+
- Punycode implementation
139+
140+
** Detailed changelog

0 commit comments

Comments
 (0)