return_ of_ do_ not_ store
'{0}' is annotated with 'doNotStore' and shouldn't be returned unless '{1}' is also annotated.
Description
#
The analyzer produces this diagnostic when a value that is annotated with
the
doNotStore
annotation is returned from a method,
getter, or function that doesn't have the same annotation.
Example
#
The following code produces this diagnostic because the result of invoking
f
shouldn't be stored, but the function
g
isn't annotated to preserve
that semantic:
import 'package:meta/meta.dart';
@doNotStore
int f() => 0;
int g() => f();
Common fixes
#
If the value that shouldn't be stored is the correct value to return, then
mark the function with the
doNotStore
annotation:
import 'package:meta/meta.dart';
@doNotStore
int f() => 0;
@doNotStore
int g() => f();
Otherwise, return a different value from the function:
import 'package:meta/meta.dart';
@doNotStore
int f() => 0;
int g() => 0;
Unless stated otherwise, the documentation on this site reflects Dart 3.9.2. Page last updated on 2025-9-4. View source or report an issue.