Pular para o conteúdo principal

non_sized_type_argument

Detalhes sobre o diagnóstico 'non_sized_type_argument' produzido pelo analisador do Dart.

The type '{0}' isn't a valid type argument for '{1}'. The type argument must be a native integer, 'Float', 'Double', 'Pointer', or subtype of 'Struct', 'Union', or 'AbiSpecificInteger'.

Descrição

#

O analisador emite este diagnóstico quando o argumento de tipo da classe Array não é um dos tipos válidos: um inteiro nativo, Float, Double, Pointer, ou um subtipo de Struct, Union ou AbiSpecificInteger.

Para mais informações sobre FFI, consulte interoperabilidade com C usando dart:ffi.

Exemplo

#

O código a seguir produz este diagnóstico porque o argumento de tipo de Array é Void, e Void não é um dos tipos válidos:

dart
import 'dart:ffi';
​
final class C extends Struct {
  @Array(8)
  external Array<Void> a0;
}

Correções comuns

#

Altere o argumento de tipo para um dos tipos válidos:

dart
import 'dart:ffi';
​
final class C extends Struct {
  @Array(8)
  external Array<Uint8> a0;
}

Encontrou essa página sem tradução ou que precisa de correção? Abra uma issue e nos ajude a manter esse site em PT-BR para ajudar pessoas como você.