ffi_ native_ invalid_ multiple_ annotations
Native functions and fields must have exactly one @Native
annotation.
Description
#
The analyzer produces this diagnostic when there is more than one
Native
annotation on a single declaration.
Example
#
The following code produces this diagnostic because the function
f
has
two
Native
annotations associated with it:
import 'dart:ffi';
@Native<Int32 Function(Int32)>()
@Native<Int32 Function(Int32)>(isLeaf: true)
external int f(int v);
Common fixes
#Remove all but one of the annotations:
import 'dart:ffi';
@Native<Int32 Function(Int32)>(isLeaf: true)
external int f(int v);
Unless stated otherwise, the documentation on this site reflects Dart 3.9.2. Page last updated on 2025-9-1. View source or report an issue.