Compiling FPM with LFortran

GSOC 2025 @Fortran-lang

by Jinang Shah

Week 6 - Kickstarting FPM Compilation

June 21 – June 27, 2025

This week marked an exciting checkpoint in my LFortran project — I began the actual compilation of Fortran Package Manager (FPM) using the LFortran compiler. After successful compilation of its dependencies like M_CLI2, jonquil, and others with some workarounds, I started tackling the core of FPM itself.

Process is same for this also, I started with creating workarounds. This effort led to the discovery of multiple frontend AST->ASR issues, which I translated into clear, minimal reproducing examples (MREs) which I will fix later. Overall this week was dedicated towards finding core issues in FPM modules that we need to tackle in order to compile it with LFortran.

Work done this week:

Around 18 hours were dedicated to FPM compilation this week. While some modules are still blocked, the issues are clear and tracked. Multiple MREs were created with specific focus on runtime polymorphism, operator overloading, and interface resolution in type-bound procedures. The collaborative effort between myself and the LFortran team has made debugging quicker and more targeted.

A big thanks again to Ondřej Čertík and Pranav Goswami for patiently reviewing issues and pull requests. Thanks to LFortran team to helping me wherever needed.

Plan for next week: