mirror of
https://github.com/dart-lang/sdk
synced 2024-11-05 18:22:09 +00:00
f68e5231b4
The test language_2/built_in_identifier_prefix_test stated 'it is not illegal to use a built-in identifier as a library prefix', which has been untrue for quite a while, and then proceeded to check a number of cases where said situation was used in practice. All of that is now obsolete, so that test was split into several tests, each of which was adjusted to test something which is relevant today. The new tests include checks for the use of "known" identifiers (such as `of`, `show`, `on` and a few more) which are mentioned explicitly in the grammar, but which are neither built-in identifiers nor reserved words. The new tests gave rise to a number of status entries, including 25 crashes (so it is not just "expect `MissingCompileTimeError` here because it's not strong mode"). Note that `Function` is considered to be a built-in identifier. This makes no difference for the grammar, but it means that there are no cases where `Function` is used as a library prefix. If we insist that `Function` cannot be a built-in identifier then we just need to add a few more grammar rules to all such things as `import .. as Function;`, but I considered it less confusing to include `Function` among the built-in identifiers and avoid adding support for this. Note that we haven't said anywhere that `Function` is a built-in identifier, so we would need to adjust an informal/*.md file to say that, to finish this off. Change-Id: Ifa5bbd95022498480b7ee2e94605f81cd11d9696 Reviewed-on: https://dart-review.googlesource.com/21080 Reviewed-by: Lasse R.H. Nielsen <lrn@google.com> Commit-Queue: Erik Ernst <eernst@google.com>
11 lines
276 B
Dart
11 lines
276 B
Dart
// Copyright (c) 2012, 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.
|
|
|
|
library hide;
|
|
|
|
class A {}
|
|
|
|
class B<T> {}
|
|
|
|
class C<T, S> {}
|