Function invocation with ! test added
diff --git a/LanguageFeatures/nnbd/static_errors_A27_t13.dart b/LanguageFeatures/nnbd/static_errors_A27_t13.dart
new file mode 100644
index 0000000..a228975
--- /dev/null
+++ b/LanguageFeatures/nnbd/static_errors_A27_t13.dart
@@ -0,0 +1,32 @@
+/*
+ * Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file
+ * for details. All rights reserved. Use of this source code is governed by a
+ * BSD-style license that can be found in the LICENSE file.
+ */
+/**
+ * @assertion It is a warning to use the null check operator (!) on an
+ * expression of type T if T is strictly non-nullable
+ *
+ * @description It is a warning to use the null check operator (!) on an
+ * expression of type T if T is strictly non-nullable. Test generic function
+ * type
+ * @author sgrekhov@unipro.ru
+ */
+// SharedOptions=--enable-experiment=non-nullable
+// Requirements=nnbd-strong
+void foo<T>() {}
+typedef void Foo<T>();
+
+main() {
+ Function f1 = foo;
+ f1!; //# 01: static type warning
+
+ Foo f2 = foo;
+ f2!; //# 02: static type warning
+
+ foo!<int>(); //# 03: static type warning
+ foo!(); //# 04: static type warning
+ f1!<int>(); //# 05: static type warning
+ f1!(); //# 06: static type warning
+ f2!(); //# 07: static type warning
+}