From a7075cd8226fe31fb5bf92102421dd6d0f3c9f7b Mon Sep 17 00:00:00 2001
From: Andre Maroneze <andre.maroneze@cea.fr>
Date: Fri, 19 Jul 2024 15:25:42 +0200
Subject: [PATCH] [analysis-scripts] cache calls to build.find_definitions

---
 share/analysis-scripts/build.py | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/share/analysis-scripts/build.py b/share/analysis-scripts/build.py
index 22ea1a474f..a5326ad636 100755
--- a/share/analysis-scripts/build.py
+++ b/share/analysis-scripts/build.py
@@ -29,6 +29,7 @@ available."""
 
 from __future__ import annotations
 import argparse
+import functools
 import json
 import logging
 import os
@@ -252,6 +253,7 @@ def copy_fc_stubs() -> Path:
 # Returns pairs (line_number, has_args) for each likely definition of
 # [funcname] in [filename].
 # [has_args] is used to distinguish between main(void) and main(int, char**).
+@functools.cache
 def find_definitions(funcname: str, filename: Path) -> list[tuple[int, bool]]:
     file_content = source_filter.open_and_filter(
         Path(filename), not under_test and do_filter_source
-- 
GitLab