The Library Analysis Tool (LAT) from Validas
Overview
Overview
Make library usage transparent, safe, and easy to manage.
The Library Analysis Tool (LAT) by Validas automatically analyzes which library functions your software uses, directly during compilation and without changing any source code.
LAT gives you full visibility into your software’s call graph while your build runs as usual. No disruption, no changes to your output.
Just deeper insight into what your code actually does.
Modern software systems are complex. Understanding dependencies, call hierarchies, and software boundaries is essential both for safety and compliance and for long-term maintainability.
LAT provides this insight automatically.
Integrates transparently into existing build systems
Requires no changes to build artefacts
Generates call graph data during compilation
Tracks scope changes continuously
During compilation, LAT analyzes the use of library functions within your software and records how they are referenced throughout the codebase. The resulting call graph provides a clear view of function dependencies and helps identify components that may require further assessment or qualification.
In short: LAT helps you understand which library functions are used in your system, where they are used, and whether they require consideration in a safety context.
LAT acts as a compiler wrapper that sits in front of your existing toolchain. During compilation, it performs static call graph analysis and generates .frt files alongside the usual object files, without modifying the build process or its outputs.
LAT is available in two variants: LAT GCC and LAT Clang. Each uses a dedicated analysis backend, while the backend compiler can be configured independently, for example as g++, clang++, or QNX q++.
lat-gcc is placed in front of the real compiler (g++)
For every compilation it invokes the real compiler normally — the build output is identical
It also runs original2frt on the same source to produce a .frt call-graph file
In the Lat-Pro and Lat-Expert editions, the Scope Checker in lat-modules compares the scope list against a baseline after each compilation
lat-clang is placed in front of the real compiler (clang++)
For every compilation it invokes the real compiler normally — the build output is identical
It also runs lat_clang_bin on the same source to produce a .frt call-graph file
In the Lat-Pro and Lat-Expert editions, the Scope Checker in lat-modules compares the scope list against a baseline after each compilation
The Library Analysis Tool (LAT) consists of several components that are delivered together as part of an edition:
lat-gcc: Compiler wrapper and build driver used in the build system.
original2frt: Core static analysis engine that generates .frt call graph files.
lat-modules: Build extensions for exclude-list management in all editions, with additional scope-monitoring capabilities in the Pro and Expert editions.
lat-scope:Utility for creating, comparing, and analyzing scope lists derived from .frt files.
frt-sql (Expert Edition): Imports .frt files into a SQLite-based call graph database.
lat-users (Expert Edition): Query tool for analyzing and exploring call graph data stored in the SQLite database.
Turn hidden dependencies into actionable insight. Learn how LAT works in practice.