OLD | NEW |
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 /** | 5 /** |
6 * The messages in this file should meet the following guide lines: | 6 * The messages in this file should meet the following guide lines: |
7 * | 7 * |
8 * 1. The message should be a complete sentence starting with an uppercase | 8 * 1. The message should be a complete sentence starting with an uppercase |
9 * letter, and ending with a period. | 9 * letter, and ending with a period. |
10 * | 10 * |
(...skipping 1137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1148 | 1148 |
1149 m(T t) => const C<T>(); | 1149 m(T t) => const C<T>(); |
1150 } | 1150 } |
1151 | 1151 |
1152 void main() => new C().m(null); | 1152 void main() => new C().m(null); |
1153 """ | 1153 """ |
1154 ]), | 1154 ]), |
1155 | 1155 |
1156 MessageKind.TYPE_VARIABLE_FROM_METHOD_NOT_REIFIED: const MessageTemplate( | 1156 MessageKind.TYPE_VARIABLE_FROM_METHOD_NOT_REIFIED: const MessageTemplate( |
1157 MessageKind.TYPE_VARIABLE_FROM_METHOD_NOT_REIFIED, | 1157 MessageKind.TYPE_VARIABLE_FROM_METHOD_NOT_REIFIED, |
1158 "Method type variables are not reified.", | 1158 "Method type variables do not have a runtime value.", |
1159 howToFix: "Try using the intended upper bound of the " | 1159 options: const ["--generic-method-syntax"], |
1160 "type variable, or dynamic." | 1160 howToFix: "Try using the upper bound of the type variable, " |
1161 // TODO(eernst): These examples should be commented in with an `options:` | 1161 "or refactor the code to avoid needing this runtime value.", |
1162 // specifying "--generic-method-syntax" and made to work; moreover, the | 1162 examples: const [ |
1163 // compiler/dart2js test 'generic_method_type_usage' should be transformed to | 1163 """ |
1164 // similar examples of the relevant `MessageKind` entries. | 1164 // Method type variables are not reified, so they cannot be returned. |
1165 // | 1165 Type f<T>() => T; |
1166 // examples: const [ | 1166 |
1167 // """ | 1167 main() => f<int>(); |
1168 // // Method type variables are not reified, so they cannot be returned. | 1168 """, |
1169 // Type f<T>() => T; | 1169 """ |
1170 // | 1170 // Method type variables are not reified, so they cannot be tested dynamically. |
1171 // main() => f<int>(); | 1171 bool f<T>(Object o) => o is T; |
1172 // """, | 1172 |
1173 // """ | 1173 main() => f<int>(42); |
1174 // // Method type variables are not reified, so they cannot be tested dynamicall
y. | 1174 """, |
1175 // bool f<T>(Object o) => o is T; | 1175 """ |
1176 // | 1176 // Method type variables are not reified, so they cannot be tested dynamically. |
1177 // main() => f<int>(42); | 1177 bool f<T>(Object o) => o as T; |
1178 // """, | 1178 |
1179 // """ | 1179 main() => f<int>(42); |
1180 // // Method type variables are not reified, so they cannot be tested dynamicall
y. | 1180 """ |
1181 // bool f<T>(Object o) => o as T; | 1181 ]), |
1182 // | |
1183 // main() => f<int>(42); | |
1184 // """ | |
1185 // ] | |
1186 ), | |
1187 | 1182 |
1188 MessageKind.INVALID_TYPE_VARIABLE_BOUND: const MessageTemplate( | 1183 MessageKind.INVALID_TYPE_VARIABLE_BOUND: const MessageTemplate( |
1189 MessageKind.INVALID_TYPE_VARIABLE_BOUND, | 1184 MessageKind.INVALID_TYPE_VARIABLE_BOUND, |
1190 "'#{typeArgument}' is not a subtype of bound '#{bound}' for " | 1185 "'#{typeArgument}' is not a subtype of bound '#{bound}' for " |
1191 "type variable '#{typeVariable}' of type '#{thisType}'.", | 1186 "type variable '#{typeVariable}' of type '#{thisType}'.", |
1192 howToFix: "Try to change or remove the type argument.", | 1187 howToFix: "Try to change or remove the type argument.", |
1193 examples: const [ | 1188 examples: const [ |
1194 """ | 1189 """ |
1195 class C<T extends num> {} | 1190 class C<T extends num> {} |
1196 | 1191 |
(...skipping 2553 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3750 static String convertToString(value) { | 3745 static String convertToString(value) { |
3751 if (value is ErrorToken) { | 3746 if (value is ErrorToken) { |
3752 // Shouldn't happen. | 3747 // Shouldn't happen. |
3753 return value.assertionMessage; | 3748 return value.assertionMessage; |
3754 } else if (value is Token) { | 3749 } else if (value is Token) { |
3755 value = value.value; | 3750 value = value.value; |
3756 } | 3751 } |
3757 return '$value'; | 3752 return '$value'; |
3758 } | 3753 } |
3759 } | 3754 } |
OLD | NEW |