diff --git a/ivette/src/frama-c/plugins/eva/valuetable.tsx b/ivette/src/frama-c/plugins/eva/valuetable.tsx
index 92e5b98569cafdce32eca936b2636ca9625f5640..d77434a448e160dc333a12e06aa69ff412cdc1f8 100644
--- a/ivette/src/frama-c/plugins/eva/valuetable.tsx
+++ b/ivette/src/frama-c/plugins/eva/valuetable.tsx
@@ -144,7 +144,9 @@ const LocToString = (loc: Location): string => `${loc.fct}:${loc.target}`;
 type LocStack = [ Location, callstack ]
 
 function useEvaluationCache(): Request<LocStack, Evaluation> {
-  const toString = ([ l, c ] : LocStack): string => `${LocToString(l)}:${c}`;
+  const toString = React.useCallback(([ l, c ] : LocStack): string => {
+    return `${LocToString(l)}:${c}`;
+  }, []);
   const get: Request<LocStack, Evaluation> = React.useCallback(([ l, c ]) => {
     const callstack = c === 'Summary' ? undefined : c as Values.callstack;
     return Server.send(Values.getValues, { ...l, callstack });