Extending C++ Support in GCC Static Analyzer
Contributor: Egas Ribeiro
GCC's static analyzer (-fanalyzer) lacks C++ class hierarchy awareness, causing it to miss bugs in exception catch blocks that use base types and...
GNU compilers
Contributor: Egas Ribeiro
GCC's static analyzer (-fanalyzer) lacks C++ class hierarchy awareness, causing it to miss bugs in exception catch blocks that use base types and...
Contributor: Enes Çevik
This project implements the compiler infrastructure—including missing intrinsics and lang items—required to compile Rust’s alloc crate in GCC Rust...
Contributor: Janet Chien
gccrs still lacks support for Rust’s Drop trait, which is a core part of Rust’s resource management model. Without it, values that require cleanup...
Contributor: Nchang Roy
Modern cloud environments frequently rely on oversubscription to maximize resource utilization, which introduces significant performance challenges...
Contributor: Sebastian Galindo
GCC currently supports most OpenACC directives for GPU offloading, but several features remain unimplemented or incomplete. This project targets four...
Contributor: ArijitKD
This project aims to implement an in-memory, volatile file system for NVIDIA GPUs using the NVPTX backend in newlib. NVPTX offloading in GCC enables...
Contributor: c8ef
This project aims to implement some new language features introduced in Fortran 2018 and Fortran 202x, enhancing gfortran's compatibility with newer...
Contributor: Ethan McDonough
The GNAT front end does not currently recognize the "parallel" keyword added as part of Ada 2022. The goal of this project is to add support in the...
Contributor: PiyushRaj927
This project addresses the lack of execution tests for the BPF backend in GCC. While GCC has many compile-time tests, the BPF backend, which...
Contributor: Ryutaro Okada
GCC Rust (gccrs) is an alternative Rust compiler frontend based on GCC, aiming for full integration into the GNU toolchain. This project focuses on...
Contributor: Zhi Heng
This medium-sized project aims to improve pattern matching support in gccrs, the GCC frontend for Rust, by implementing compilation for the currently...
Contributor: Anuj Mohite
The project aims to enhance the f951 compiler's `DO CONCURRENT` construct by implementing locality clauses, supporting reduction operation and...
Contributor: jjasmine
gccrs is a full alternative implementation of the Rust language ontop of GCC with the goal to become fully upstream with the GNU toolchain. One of...
Contributor: Kushal Pal
The main goal of this project is to add location support in GCC Rust, to BIR i.e an intermediate representation that will be exclusively used by the...
Contributor: Pranil Dey
Exception handling in GCC follows the Itanium ABI, particularly the C++ exception handling ABI. This process involves creating, throwing, and finally...
Contributor: Georgii Burunsuzian
The project focuses on streamlining the debugging and development process for code intended for offloading to devices like GPUs. It proposes a method...
Contributor: Muhammad Mahad
We have to adapt a copy of the rustc testsuite to make use of the error code framework implemented in gccrs as part of GSoC 2023. We need to develop...
Contributor: Thor Preimesberger
This project adds a new dump option to gcc that dumps GENERIC trees as JSON. We also add some plumbing into gcc's gdb hooks that allow one to browse...
Contributor: Benjamin Priour
Currently, the static analyzer offers little dedicated support for C++. Even when projecting the most straightforward valid C test cases to C++, the...
Contributor: Eric Feng
One pertinent use case of the gcc-python plugin was to provide the infrastructure for cpychecker, a static analysis tool designed for CPython...
Contributor: Ken Matsui
Many C++ standard library traits are often implemented using template metaprogramming, which can result in worse compilation performance due to...
Contributor: Muhammad Mahad
The goal of this project is to enhance the user experience of gccrs by enabling it to emit error codes similar to rustc. This will help bridge the...
Contributor: Raiki Tamura
The Rust programming language supports Unicode in identifiers, similarly to other modern programming languages such as Go, C++, and JavaScript. The...
Contributor: Rishi Raj
Link Time Optimization (LTO) enables GCC to dump its internal representation (GIMPLE) to disk so that a single executable can be optimized as a...
Contributor: Immad Mir
The project aims to extend GCC’s static analyzer to support reporting warnings for “misuse” of POSIX FD APIs such as double-close, leakage, access...
Contributor: Tim Lange
Static analysis helps developers to find bugs in their code at compile-time. Shipping a static analysis tool built into the compiler, which can be...
Contributor: Faisal Abbas
This projects aims to complete the support for Constant Folding in GCC Rust frontend. It will do so by finishing the already started constant folding...
Contributor: Ankur Saini
The project aims to make GCC's static analysis pass ( -fanalyzer option ) understand dynamic dispatch ( virtual functions ) in C++. This project will...
Contributor: Arthur Cohen
Make gccrs usable under the cargo build system in order to bridge the gap between rustc and gccrs. The project aims to create a base upon which to...
Contributor: Wenzhang Yang
Add an unreachable static analysis if a function is unused all functions after that point is unused. liveness analysis to get all reachable symbols...
Contributor: John Ravi
Both Link Time Optimization (LTO) and C++20 Modules will benefit from a closer interaction between build system and compiler. LTO benefits from...
Contributor: Giuliano Belinassi
In this project, we aim to detect whether compiling a file in parallel can improve the compilation performance. If so, then we proceed the...
Contributor: akshatg
memory_order_consume gets automatically promoted to memory_order_acquire due to the difficulties faced by the compiler while tracing dependencies at...
Contributor: Tejas Joshi
GCC has support for built-in functions in C99/C11 standards along with features of IEEE standards. These functions do appropriate calculations...
Contributor: Khurai Kim
This project is to Implement work-stealing scheduling into the GCC implementation of the OpenMP standard. Task parallelism often yields highly...
Contributor: Giuliano Belinassi
GCC alone is unable to compile a single large file in parallel, causing parallelization bottlenecks in some projects such as GCC itself. Here we...
Contributor: ThePhD
With the coming revival of bit utilities paper for the C++ Standard and the potential of a new suite of bit utilities coming from a header [5], the...
Contributor: SHUBHAM NARLAWAR
The aim of this project is to add GCC C Extensions such as compiler attributes, vector extensions, etc. in Csmith. Run Csmith against GCC and report...
Contributor: HRISHIKESH KULKARNI
As far as I understand, the motivation for LTO framework was to enable cross-file interprocedural optimizations, and for this purpose an ipa pass is...