Skip to content

Expects wrong number of type arguments #500

Closed
@peter-ahe-google

Description

@peter-ahe-google

This is fisk.dart:

interface Link<T> extends Iterable<T> factory LinkFactory {
  Link(T head, [Link<T> tail]);
  Link<T> prepend(T element);
}

interface EmptyLink<T> extends Link<T> factory LinkTail<T> {
  const EmptyLink();
}

class LinkFactory {
  factory Link<T>(head, [Link tail]) {
  }
}

class AbstractLink<T> implements Link<T> {
  const AbstractLink();
  Link<T> prepend(T element) {
    return new Link<T>(element, this);
  }
}

class LinkTail<T> extends AbstractLink<T> implements EmptyLink<T> {
  const LinkTail();
}

class LinkEntry<T> extends AbstractLink<T> {
  LinkEntry(T head, Link<T> realTail);
}

main() {
  new EmptyLink<String>().prepend('hest');
  const EmptyLink<String>().prepend('fisk');
}

./xcodebuild/Debug_ia32/dart_bin --enable_type_checks fisk.dart

'fisk.dart': Error: line 31 pos 3: incorrect number of type arguments, expected 2 got 1
  new EmptyLink<String>().prepend('hest');
  ^

Metadata

Metadata

Assignees

Labels

area-vmUse area-vm for VM related issues, including code coverage, and the AOT and JIT backends.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions