Hi Dave,

> But a better place to look would probably be in our bugzilla; see the
> links on the wiki page:
>  https://gcc.gnu.org/wiki/StaticAnalyzer 
> The "open bugs" list currently has 41 "RFE" bugs ("request for
> enhancement" i.e. ideas for new features), some of which might make
> suitable GSoC ideas, and/or be of interest to you (ideally both!)
> 
> Also, the GSoC wiki page has some project ideas:
>  https://gcc.gnu.org/wiki/SummerOfCode#Selected_Project_Ideas
> 

Yeah I was also searching for interesting ideas on the bugzilla, and I will 
communicate to you once I have any more concrete ideas.
> 
> If you haven't seen it yet, you might find my guide to GCC for new
> contributors helpful:
>  https://gcc-newbies-guide.readthedocs.io/en/latest/index.html
> 

Just started reading it. Thanks for sharing!

> IIRC I saw you post a few days ago about trying to build gcc on your M2
> laptop; did you manage this?  Building GCC trunk from a git checkout,
> and hacking in a "hello world" warning would be a great place to start.
> See the guide above for some hints on how to make this process quicker,
> and let me know if you need help if you run into difficulties.  Given
> that the analyzer is about emitting warnings, rather than generating
> code, it may be that although we don't yet fully support your hardware,
> we *might* already support it enough to allow for hacking on the
> analyzer, perhaps with some judicious choices of "configure" options.

I just finished building it today on my laptop (Thanks Iain!). The GCC-12 
branch did not work (I got `configure: error: C preprocessor "/lib/cpp" fails 
sanity check`) but the development branch works for me (haven’t encountered the 
potential pitfalls mentioned yet after testing it with some simple programs). 
Besides, I have also set up everything on both my university server and the 
compile farm machine, so I can test my work on these two machines as well.

What do you mean by a “hello world” warning? You meant to write some simple 
code like

```
#include <stdio.h>
int main ()
{
  int a;
  printf ("hello world\n");
  return a;
}
```

and to get the warning “warning: use of uninitialized value ‘a’ [CWE-457] 
[-Wanalyzer-use-of-uninitialized-value]”? 

Best,
Shengyu

Reply via email to