Hello,

we are delighted you found contributing to GCC interesting.

On Mon, Mar 27 2023, Igor Putovny via Gcc wrote:
> Dear all,
>
> I am a student of computer science and I was thinking about applying for
> Google Summer of Code 2023. Naturally, I wanted to reach out to you before
> applying for GCC projects.

Please look again at the "Before you apply" section of the idea page
https://gcc.gnu.org/wiki/SummerOfCode#Before_you_apply and make sure you
are able to build, install and test GCC and then have it generate dumps
and step through some function during compilation.

>
> From selected topics you are interested in, several grabbed my attention:
> 1. Bypass assembler when generating LTO object file

See https://gcc.gnu.org/pipermail/gcc/2023-March/240833.html

> 2. Extend the static analysis pass

This is an area, rather than a specific project.  I'd suggest you look
trough recent archives of the gcc mailing list too, as many projects in
that area have been discussed there recently.

> 3. Rust Front-End: HIR Dump
> 4. Rust Front-End: Improving user errors

Please note that Rust-GCC projects are a bit special in the sense that
they are often discussed primarily on Zulip of the gcc-rust team:

https://gcc-rust.zulipchat.com/

So you may want to reach out to them there as well.

>
> I have to admit that I feel a bit intimidated by projects of "hard
> difficulty", because I have seen how hard it is to find your way in a large
> codebase (which GCC definitely is).

I definitely agree that GCC source can be hard to go through, especially
for newcomers but often even for seasoned contributors when they look at
a part they are not familiar with.  But when you manage to manage to
overcome the difficulty, the project can be very rewarding.  And so not
hesitate to ask us any specific question you may have here on the
mailing list or on IRC.

>
> Therefore, I would like to ask you for your opinion about these topics and
> the level of theoretical/practical experience with compilers you are
> expecting.

The topics were selected because they are good in various ways and the
necessary level of experience is also broadly described on our wiki
page.  You need to be good at C/C++ and have to be willing (and able) to
navigate the big-code base.  Figuring it out is work, but doable.

>
> As for the languages used, I have advanced knowledge of C and intermediate
> knowledge of C++.

That should be good enough.  I think.  But you need to do some research
of the code related to the topics yourself and you should fairly quickly
realize whether your C/C++ skills are sufficient.

Good luck!

Martin

Reply via email to