Flang 24 (In-Progress) Release Notes

Warning

These are in-progress notes for the upcoming LLVM 24 release. Release notes for previous releases can be found on the Download Page.

Introduction

This document contains the release notes for the Flang Fortran frontend, part of the LLVM Compiler Infrastructure, release 24. Here we describe the status of Flang in some detail, including major improvements from the previous release and new feature work. For the general LLVM release notes, see the LLVM documentation. All LLVM releases may be downloaded from the LLVM releases web site.

Note that if you are reading this file from a Git checkout, this document applies to the next release, not the current one. To see the release notes for a specific release, please see the releases page.

Major New Features

Bug Fixes

Non-comprehensive list of changes in this release

  • The legacy array-value operations (fir.array_load, fir.array_fetch, fir.array_update, fir.array_modify, fir.array_access, fir.array_amend, fir.array_merge_store) have been removed from FIR, together with the array-value-copy pass that legalized them and its -mmlir -disable-avc option. Nothing in flang has produced these operations since the legacy (non-HLFIR) expression lowering was deleted. Downstream projects that still construct them must migrate to HLFIR (or their own legalization) before rebasing. fir.array_coor is unrelated and remains supported.

  • Added support for compressed DWARF debug sections. Flang now supports compressing DWARF debug info in ELF object files using zlib or zstd, reducing debug information size in compiled binaries.

New Compiler Flags

  • Added the gfortran-compatible -ffpe-trap= flag, which sets the initial floating-point exception halting mode of the main program. It takes a comma-separated list of invalid, zero, overflow, underflow, inexact, and the extension denormal, or none to disable halting. See the Flang command line reference for the supported targets and details.

  • Added -gz and -gz=<format> flags to enable compression of DWARF debug sections. Supported formats are zlib, zstd, and none.

Windows Support

Fortran Language Changes in Flang

Build System Changes

New Issues Found

Additional Information

Flang’s documentation is located in the flang/docs/ directory in the LLVM monorepo.

If you have any questions or comments about Flang, please feel free to contact us on the Discourse forums.