mirror of
https://github.com/dart-lang/sdk
synced 2024-09-05 00:13:50 +00:00
Spelling
Closes https://github.com/dart-lang/sdk/pull/51143 GitOrigin-RevId: 9e21c99a222d588e4fc95980725a2f8c9784965c Change-Id: If0870e8936c7649935dce7e23cd783d62aa5610c Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/279916 Reviewed-by: Alexander Thomas <athom@google.com> Commit-Queue: Alexander Thomas <athom@google.com>
This commit is contained in:
parent
68a850bde0
commit
77978889eb
|
@ -4861,7 +4861,7 @@ class _FlowAnalysisImpl<Node extends Object, Statement extends Node,
|
|||
/// Creates a [ReferenceWithType] representing a temporary variable that
|
||||
/// doesn't correspond to any variable in the user's source code. This is
|
||||
/// used by flow analysis to model the synthetic variables used during pattern
|
||||
/// matching to cache the values that the pattern, and its subpattterns, are
|
||||
/// matching to cache the values that the pattern, and its subpatterns, are
|
||||
/// being matched against.
|
||||
ReferenceWithType<Type> _makeTemporaryReference(
|
||||
SsaNode<Type>? ssaNode, Type matchedType) {
|
||||
|
|
|
@ -102,7 +102,7 @@ class _StringNode extends _Node {
|
|||
// * [String] is 16 bytes plus the actual string data.
|
||||
//
|
||||
// It's an estimation that may overestimate (e.g. on 32-bit architectures) or
|
||||
// underestimate (if paylod is unicode) - but is reasonably precise for our
|
||||
// underestimate (if payload is unicode) - but is reasonably precise for our
|
||||
// purpose.
|
||||
int get estimatedMemoryConsumption => 32 + (16 + payload.length);
|
||||
}
|
||||
|
|
|
@ -37,7 +37,7 @@ class PromotionKeyStore<Variable extends Object> {
|
|||
/// Creates a fresh promotion key that hasn't been used before (and won't be
|
||||
/// reused again). This is used by flow analysis to model the synthetic
|
||||
/// variables used during pattern matching to cache the values that the
|
||||
/// pattern, and its subpattterns, are being matched against.
|
||||
/// pattern, and its subpatterns, are being matched against.
|
||||
int makeTemporaryKey() => _makeNewKey();
|
||||
|
||||
Variable? variableForKey(int variableKey) => _keyToInfo[variableKey].variable;
|
||||
|
|
|
@ -49,7 +49,7 @@ IDE.
|
|||
### VS Code
|
||||
|
||||
1. Open the command palette (Ctrl+Shift+P) and type "Dart: Open Analyzer
|
||||
Diagnostics". The analyzer diagonstics website should open in an external
|
||||
Diagnostics". The analyzer diagnostics website should open in an external
|
||||
browser.
|
||||
|
||||
## Using the analyzer diagnostics pages
|
||||
|
|
|
@ -220,7 +220,7 @@ class CodeActionHandler
|
|||
}
|
||||
}
|
||||
|
||||
/// Sorts [CodeActionWithPriority]s by priorty, and removes duplicates keeping
|
||||
/// Sorts [CodeActionWithPriority]s by priority, and removes duplicates keeping
|
||||
/// the one nearest [range].
|
||||
class _CodeActionSorter {
|
||||
final Range range;
|
||||
|
|
|
@ -56,7 +56,7 @@ class CompletionResolveHandler
|
|||
if (clientCapabilities == null) {
|
||||
// This should not happen unless a client misbehaves.
|
||||
return error(ErrorCodes.ServerNotInitialized,
|
||||
'Requests not before server is initilized');
|
||||
'Requests not before server is initialized');
|
||||
}
|
||||
|
||||
final file = data.file;
|
||||
|
|
|
@ -84,7 +84,7 @@ class MoveAnnotationToLibraryDirective extends CorrectionProducer {
|
|||
while (commentOnFirstToken!.next != null) {
|
||||
commentOnFirstToken = commentOnFirstToken.next!;
|
||||
}
|
||||
// `token` is now the last of the leading comments (perhaps a Copyight
|
||||
// `token` is now the last of the leading comments (perhaps a Copyright
|
||||
// notice, a Dart language version, etc.)
|
||||
insertionOffset = commentOnFirstToken.end;
|
||||
prefix = '$eol$eol';
|
||||
|
|
|
@ -89,7 +89,7 @@ class MoveDocCommentToLibraryDirective extends CorrectionProducer {
|
|||
return;
|
||||
}
|
||||
}
|
||||
// `token` is now the last of the leading comments (perhaps a Copyight
|
||||
// `token` is now the last of the leading comments (perhaps a Copyright
|
||||
// notice, a Dart language version, etc.)
|
||||
insertionOffset = commentOnFirstToken.end;
|
||||
prefix = '$eol$eol';
|
||||
|
|
|
@ -114,7 +114,7 @@ suggestions
|
|||
// The `true` isn't in the `IfStatement`. The only reason we don't suggest
|
||||
// `when` in this case is because the completion point is computed to be
|
||||
// just before the closing paren, but because the previous token is a number
|
||||
// we short circuit the `KeywordConstributor`.
|
||||
// we short circuit the `KeywordContributor`.
|
||||
await computeSuggestions('''
|
||||
void f(Object o) {
|
||||
if (o case != '' ^ o.length > 3) {}
|
||||
|
|
|
@ -285,7 +285,7 @@ void f() {}
|
|||
* comment 1
|
||||
*//*0]*/
|
||||
|
||||
/* this comment starts on the same line as delimeters/*[1*/
|
||||
/* this comment starts on the same line as delimiters/*[1*/
|
||||
* second line
|
||||
*//*1]*/
|
||||
void f() {}
|
||||
|
|
|
@ -260,7 +260,7 @@ class MyCl^ass1 {}
|
|||
]);
|
||||
}
|
||||
|
||||
Future<void> test_mixin_superclassConstaints() async {
|
||||
Future<void> test_mixin_superclassConstraints() async {
|
||||
final content = '''
|
||||
/*[0*/mixin /*[1*/MyMixin1/*1]*/ on MyClass1 {}/*0]*/
|
||||
class MyCl^ass1 {}
|
||||
|
|
|
@ -76,7 +76,7 @@ Future<Server> connectToServer(String packagePath) async {
|
|||
AnalysisSetAnalysisRootsParams([packagePath], const []).toJson());
|
||||
|
||||
// wait for analysis to complete
|
||||
await handler.analysisFinshed.future;
|
||||
await handler.analysisFinished.future;
|
||||
|
||||
return server;
|
||||
}
|
||||
|
@ -108,7 +108,7 @@ class StatusHandler with NotificationHandler, ConnectionHandler {
|
|||
@override
|
||||
final Server server;
|
||||
|
||||
final Completer<bool> analysisFinshed = Completer();
|
||||
final Completer<bool> analysisFinished = Completer();
|
||||
|
||||
StatusHandler(this.server);
|
||||
|
||||
|
@ -116,7 +116,7 @@ class StatusHandler with NotificationHandler, ConnectionHandler {
|
|||
void onServerStatus(ServerStatusParams params) {
|
||||
if (params.analysis != null) {
|
||||
if (!params.analysis!.isAnalyzing) {
|
||||
analysisFinshed.complete(true);
|
||||
analysisFinished.complete(true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -75,7 +75,7 @@
|
|||
* Added `FileResult.isAugmentation` and `isLibrary` to complement `isPart`.
|
||||
* Deprecated 'XyzDeclaration.name' in AST, use `name2` and `declaredElement` instead.
|
||||
* Deprecated `Element.enclosingElement2`, use `enclosingElement3` instead. The meaningful change is that
|
||||
`ConstructorElement.enclosingElement3` returns now `IntefaceElement`, not `ClassElement`.
|
||||
`ConstructorElement.enclosingElement3` returns now `InterfaceElement`, not `ClassElement`.
|
||||
* Deprecated `get enums/mixin`, use `get enums2/mixins2` instead.
|
||||
* Deprecated `DartType.element`, check for `InterfaceType`, `TypeParameterType`, and then ask the element.
|
||||
* Deprecated `ClassElement.isEnum` and `isMixin`. Check for `is EnumElement` and `is MixinElement` instead.
|
||||
|
@ -919,7 +919,7 @@
|
|||
#36678, #36691.
|
||||
|
||||
## 0.36.0
|
||||
* Changed the return type of `Expression.precendence` to `Precedence`. Clients
|
||||
* Changed the return type of `Expression.precedence` to `Precedence`. Clients
|
||||
that prepared for this change by switching to `Expression.precedence2` should
|
||||
now return to using `Expression.precedence`.
|
||||
* AST cleanup related to the "UI as code" feature:
|
||||
|
|
|
@ -1463,7 +1463,7 @@ abstract class Configuration implements AstNode {
|
|||
/// - constant constructor invocations
|
||||
/// - constant list literals
|
||||
/// - constant set or map literals
|
||||
/// - constant expressions wrapped in parentheses and preceeded by the `const`
|
||||
/// - constant expressions wrapped in parentheses and preceded by the `const`
|
||||
/// keyword
|
||||
///
|
||||
/// This node is also used to recover from cases where a different kind of
|
||||
|
|
|
@ -25,7 +25,7 @@ import 'package:meta/meta.dart';
|
|||
/// optimistically assume the constraint will be satisfied.
|
||||
///
|
||||
/// For example if we are inferring type parameter A, and we ask if
|
||||
/// `A <: num`, this will record that A must be a subytpe of `num`. It also
|
||||
/// `A <: num`, this will record that A must be a subtype of `num`. It also
|
||||
/// handles cases when A appears as part of the structure of another type, for
|
||||
/// example `Iterable<A> <: Iterable<num>` would infer the same constraint
|
||||
/// (due to covariant generic types) as would `() -> A <: () -> num`. In
|
||||
|
|
|
@ -208,10 +208,10 @@ class ExitDetector extends GeneralizingAstVisitor<bool> {
|
|||
// TODO(jwren) Do we want to take all constant expressions into account?
|
||||
// If for(; true; ) (or for(;;)), and the body doesn't return or the body
|
||||
// doesn't have a break, then return true.
|
||||
bool implicitOrExplictTrue = conditionExpression == null ||
|
||||
bool implicitOrExplicitTrue = conditionExpression == null ||
|
||||
(conditionExpression is BooleanLiteral &&
|
||||
conditionExpression.value);
|
||||
if (implicitOrExplictTrue) {
|
||||
if (implicitOrExplicitTrue) {
|
||||
if (blockReturns || !_enclosingBlockContainsBreak) {
|
||||
return true;
|
||||
}
|
||||
|
@ -279,9 +279,9 @@ class ExitDetector extends GeneralizingAstVisitor<bool> {
|
|||
// TODO(jwren) Do we want to take all constant expressions into account?
|
||||
// If for(; true; ) (or for(;;)), and the body doesn't return or the body
|
||||
// doesn't have a break, then return true.
|
||||
bool implicitOrExplictTrue =
|
||||
bool implicitOrExplicitTrue =
|
||||
condition == null || (condition is BooleanLiteral && condition.value);
|
||||
if (implicitOrExplictTrue) {
|
||||
if (implicitOrExplicitTrue) {
|
||||
if (blockReturns || !_enclosingBlockContainsBreak) {
|
||||
return true;
|
||||
}
|
||||
|
|
|
@ -2857,16 +2857,16 @@ class AstBuilder extends StackListener {
|
|||
|
||||
@override
|
||||
void endOptionalFormalParameters(
|
||||
int count, Token leftDelimeter, Token rightDelimeter) {
|
||||
assert((optional('[', leftDelimeter) && optional(']', rightDelimeter)) ||
|
||||
(optional('{', leftDelimeter) && optional('}', rightDelimeter)));
|
||||
int count, Token leftDelimiter, Token rightDelimiter) {
|
||||
assert((optional('[', leftDelimiter) && optional(']', rightDelimiter)) ||
|
||||
(optional('{', leftDelimiter) && optional('}', rightDelimiter)));
|
||||
debugEvent("OptionalFormalParameters");
|
||||
|
||||
push(
|
||||
_OptionalFormalParameters(
|
||||
popTypedList2<FormalParameterImpl>(count),
|
||||
leftDelimeter,
|
||||
rightDelimeter,
|
||||
leftDelimiter,
|
||||
rightDelimiter,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
|
|
@ -4075,7 +4075,7 @@ class ErrorVerifier extends RecursiveAstVisitor<void>
|
|||
///
|
||||
/// If e is -n and n is an integer literal, then
|
||||
/// - If the context type is double, it is a compile-time error if the
|
||||
/// numerical value of n is not precisley representable by a double.
|
||||
/// numerical value of n is not precisely representable by a double.
|
||||
/// Otherwise the static type of e is double and the result of evaluating e
|
||||
/// is the result of calling the unary minus operator on a double instance
|
||||
/// representing the numerical value of n.
|
||||
|
@ -4508,7 +4508,7 @@ class ErrorVerifier extends RecursiveAstVisitor<void>
|
|||
}
|
||||
if (step == parameters.length) {
|
||||
var element = parameter.declaredElement!;
|
||||
// This error can only occur if there is a bound, so we can saefly
|
||||
// This error can only occur if there is a bound, so we can safely
|
||||
// assume `element.bound` is non-`null`.
|
||||
errorReporter.reportErrorForToken(
|
||||
CompileTimeErrorCode.TYPE_PARAMETER_SUPERTYPE_OF_ITS_BOUND,
|
||||
|
|
|
@ -328,7 +328,7 @@ abstract class PubspecVisitor<T> {
|
|||
|
||||
T? visitPackageName(PSEntry name) => null;
|
||||
|
||||
T? visitPackageRepository(PSEntry repostory) => null;
|
||||
T? visitPackageRepository(PSEntry repository) => null;
|
||||
|
||||
T? visitPackageVersion(PSEntry version) => null;
|
||||
}
|
||||
|
|
|
@ -193,7 +193,7 @@ class _StringScanner {
|
|||
/// Returns whether the end of the string has been reached.
|
||||
bool get isDone => _position == _source.length;
|
||||
|
||||
/// Returns the last match from scalling [scan] if the position has not
|
||||
/// Returns the last match from scaling [scan] if the position has not
|
||||
/// advanced since.
|
||||
Match? get lastMatch {
|
||||
return _position == _lastMatchPosition ? _lastMatch : null;
|
||||
|
|
|
@ -279,7 +279,7 @@ class BlazeFileWatcherIsolate {
|
|||
/// isolate is supposed to shut down. No more messages should be exchanged
|
||||
/// afterwards.
|
||||
class BlazeFileWatcherService {
|
||||
final InstrumentationService _instrumetation;
|
||||
final InstrumentationService _instrumentation;
|
||||
|
||||
final _events = StreamController<List<WatchEvent>>.broadcast();
|
||||
|
||||
|
@ -296,7 +296,7 @@ class BlazeFileWatcherService {
|
|||
/// True if the isolate is ready to watch files.
|
||||
final _isolateHasStarted = Completer<void>();
|
||||
|
||||
BlazeFileWatcherService(this._instrumetation);
|
||||
BlazeFileWatcherService(this._instrumentation);
|
||||
|
||||
Stream<List<WatchEvent>> get events => _events.stream;
|
||||
|
||||
|
@ -342,9 +342,9 @@ class BlazeFileWatcherService {
|
|||
} else if (message is BlazeWatcherEvents) {
|
||||
_events.add(message.events);
|
||||
} else if (message is BlazeWatcherError) {
|
||||
_instrumetation.logError(message.message);
|
||||
_instrumentation.logError(message.message);
|
||||
} else {
|
||||
_instrumetation.logError(
|
||||
_instrumentation.logError(
|
||||
'Received unexpected message from BlazeFileWatcherIsolate: $message');
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1298,7 +1298,7 @@ class C {
|
|||
expect(member, isNull);
|
||||
}
|
||||
|
||||
void test_missingSemicolon_varialeDeclarationList() {
|
||||
void test_missingSemicolon_variableDeclarationList() {
|
||||
void verify(CompilationUnitMember member, String expectedTypeName,
|
||||
String expectedName, String expectedSemicolon) {
|
||||
expect(member, isTopLevelVariableDeclaration);
|
||||
|
|
|
@ -4230,7 +4230,7 @@ class A2 {}
|
|||
fileStateFor(a).refresh();
|
||||
|
||||
// The augmentation `a.dart` has a different unlinked key, and its
|
||||
// refresh invalidated the library cycle `b.dart`, which has a differrent
|
||||
// refresh invalidated the library cycle `b.dart`, which has a different
|
||||
// signature now.
|
||||
assertDriverStateString(testFile, r'''
|
||||
files
|
||||
|
|
|
@ -3526,6 +3526,60 @@ FunctionReference
|
|||
''');
|
||||
}
|
||||
|
||||
test_staticMethod_explicitReceiver_prefix() async {
|
||||
newFile('$testPackageLibPath/a.dart', '''
|
||||
class A {
|
||||
static void foo<T>(T a) {}
|
||||
}
|
||||
''');
|
||||
await assertNoErrorsInCode('''
|
||||
import 'a.dart' as prefix;
|
||||
|
||||
bar() {
|
||||
prefix.A.foo<int>;
|
||||
}
|
||||
''');
|
||||
|
||||
assertImportPrefix(
|
||||
findNode.simple('prefix.'), findElement.prefix('prefix'));
|
||||
var reference = findNode.functionReference('foo<int>;');
|
||||
assertResolvedNodeText(reference, r'''
|
||||
FunctionReference
|
||||
function: PropertyAccess
|
||||
target: PrefixedIdentifier
|
||||
prefix: SimpleIdentifier
|
||||
token: prefix
|
||||
staticElement: self::@prefix::prefix
|
||||
staticType: null
|
||||
period: .
|
||||
identifier: SimpleIdentifier
|
||||
token: A
|
||||
staticElement: package:test/a.dart::@class::A
|
||||
staticType: null
|
||||
staticElement: package:test/a.dart::@class::A
|
||||
staticType: null
|
||||
operator: .
|
||||
propertyName: SimpleIdentifier
|
||||
token: foo
|
||||
staticElement: package:test/a.dart::@class::A::@method::foo
|
||||
staticType: void Function<T>(T)
|
||||
staticType: void Function<T>(T)
|
||||
typeArguments: TypeArgumentList
|
||||
leftBracket: <
|
||||
arguments
|
||||
NamedType
|
||||
name: SimpleIdentifier
|
||||
token: int
|
||||
staticElement: dart:core::@class::int
|
||||
staticType: null
|
||||
type: int
|
||||
rightBracket: >
|
||||
staticType: void Function(int)
|
||||
typeArgumentTypes
|
||||
int
|
||||
''');
|
||||
}
|
||||
|
||||
test_staticMethod_explicitReceiver_prefix_typeAlias() async {
|
||||
newFile('$testPackageLibPath/a.dart', '''
|
||||
class A {
|
||||
|
@ -3625,60 +3679,6 @@ FunctionReference
|
|||
''');
|
||||
}
|
||||
|
||||
test_staticMethod_explicitReciver_prefix() async {
|
||||
newFile('$testPackageLibPath/a.dart', '''
|
||||
class A {
|
||||
static void foo<T>(T a) {}
|
||||
}
|
||||
''');
|
||||
await assertNoErrorsInCode('''
|
||||
import 'a.dart' as prefix;
|
||||
|
||||
bar() {
|
||||
prefix.A.foo<int>;
|
||||
}
|
||||
''');
|
||||
|
||||
assertImportPrefix(
|
||||
findNode.simple('prefix.'), findElement.prefix('prefix'));
|
||||
var reference = findNode.functionReference('foo<int>;');
|
||||
assertResolvedNodeText(reference, r'''
|
||||
FunctionReference
|
||||
function: PropertyAccess
|
||||
target: PrefixedIdentifier
|
||||
prefix: SimpleIdentifier
|
||||
token: prefix
|
||||
staticElement: self::@prefix::prefix
|
||||
staticType: null
|
||||
period: .
|
||||
identifier: SimpleIdentifier
|
||||
token: A
|
||||
staticElement: package:test/a.dart::@class::A
|
||||
staticType: null
|
||||
staticElement: package:test/a.dart::@class::A
|
||||
staticType: null
|
||||
operator: .
|
||||
propertyName: SimpleIdentifier
|
||||
token: foo
|
||||
staticElement: package:test/a.dart::@class::A::@method::foo
|
||||
staticType: void Function<T>(T)
|
||||
staticType: void Function<T>(T)
|
||||
typeArguments: TypeArgumentList
|
||||
leftBracket: <
|
||||
arguments
|
||||
NamedType
|
||||
name: SimpleIdentifier
|
||||
token: int
|
||||
staticElement: dart:core::@class::int
|
||||
staticType: null
|
||||
type: int
|
||||
rightBracket: >
|
||||
staticType: void Function(int)
|
||||
typeArgumentTypes
|
||||
int
|
||||
''');
|
||||
}
|
||||
|
||||
test_tooFewTypeArguments() async {
|
||||
await assertErrorsInCode('''
|
||||
class A {
|
||||
|
|
|
@ -35,7 +35,7 @@ class A {
|
|||
}
|
||||
''', [
|
||||
// TODO(srawlins): Only report one error. Theoretically change Fasta to
|
||||
// report "Field initiailizer in factory constructor" as a parse error.
|
||||
// report "Field initializer in factory constructor" as a parse error.
|
||||
error(CompileTimeErrorCode.FIELD_INITIALIZER_FACTORY_CONSTRUCTOR, 43, 12),
|
||||
error(ParserErrorCode.MISSING_FUNCTION_BODY, 56, 1),
|
||||
]);
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
// Copyright (c) 2019, the Dart propject authors. Please see the AUTHORS file
|
||||
// Copyright (c) 2019, 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.
|
||||
|
||||
|
|
|
@ -171,7 +171,7 @@ f(p.A a, p.B b) {}
|
|||
]);
|
||||
}
|
||||
|
||||
test_duplicteImport_differentPrefix() async {
|
||||
test_duplicateImport_differentPrefix() async {
|
||||
newFile('$testPackageLibPath/lib1.dart', '''
|
||||
class A {}
|
||||
class B {}
|
||||
|
|
|
@ -53,7 +53,7 @@ The current compiler phases are:
|
|||
The result of this phase is what we call a "closed world" (w1). The closed
|
||||
world is also a datastructure that can answer interesting queries, such as:
|
||||
Is this interface implemented by a single class? Is this method available
|
||||
in any stubtype of some interface? The answers to these questions can help
|
||||
in any subtype of some interface? The answers to these questions can help
|
||||
the compiler generate higher quality JavaScript.
|
||||
|
||||
4. **global analysis**: Run a global analysis that assumes closed world
|
||||
|
|
|
@ -1280,7 +1280,7 @@ Usage: dart compile js [arguments] <dart entry point>
|
|||
--disable-rti-optimizations
|
||||
|
||||
|
||||
Some optimizations cannot be dissabled at this time, as we add the option
|
||||
Some optimizations cannot be disabled at this time, as we add the option
|
||||
to disable them, they will be added here as well.
|
||||
|
||||
-O1
|
||||
|
|
|
@ -31,7 +31,7 @@ abstract class InferredData {
|
|||
SideEffects getSideEffectsOfElement(FunctionEntity element);
|
||||
|
||||
/// Returns the side effects of calling [selector] on the [receiver]. A `null`
|
||||
/// [receiver] indicates the type of the reciever is unknown and therefore
|
||||
/// [receiver] indicates the type of the receiver is unknown and therefore
|
||||
/// all matches of the selector are returned.
|
||||
SideEffects getSideEffectsOfSelector(
|
||||
Selector selector, AbstractValue? receiver);
|
||||
|
|
|
@ -122,7 +122,7 @@ class RecordData {
|
|||
}
|
||||
|
||||
/// How to access a field of a record. Currently there are two forms, a single
|
||||
/// field acccess (e.g. `r._2`), used for small records, or a field access
|
||||
/// field access (e.g. `r._2`), used for small records, or a field access
|
||||
/// followed by an indexing, used for records that hold the values in a JSArray
|
||||
/// (e.g. `r._values[2]`).
|
||||
class RecordAccessPath {
|
||||
|
@ -149,7 +149,7 @@ class RecordRepresentation {
|
|||
/// A shape class defines some metadata properties on the prototype:
|
||||
///
|
||||
/// (1) The shapeTag, a small integer (see below).
|
||||
/// (2) The the top-type recipe for the shape. The recipe is a function of the
|
||||
/// (2) The top-type recipe for the shape. The recipe is a function of the
|
||||
/// [shape]. e.g. `"+end,start(@,@)"`.
|
||||
final bool definesShape;
|
||||
|
||||
|
|
|
@ -245,7 +245,7 @@ class SsaInstructionSelection extends HBaseVisitor<HInstruction?>
|
|||
bool _requiresUintConversion(HInstruction node) {
|
||||
if (node.isUInt31(_abstractValueDomain).isDefinitelyTrue) return false;
|
||||
if (_bitWidth(node) <= 31) return false;
|
||||
// JavaScript bitwise operations generally intepret the input as a signed
|
||||
// JavaScript bitwise operations generally interpret the input as a signed
|
||||
// 32-bit value, so the conversion to an unsigned value may be avoided if
|
||||
// the value is used only by bitwise operations.
|
||||
return _hasNonBitOpUser(node, Set<HPhi>());
|
||||
|
|
|
@ -16,7 +16,7 @@ class Scrollbar implements ScrollListener {
|
|||
/// the content is stretching past its boundaries.
|
||||
static const _MIN_COMPRESSED_SIZE = 8;
|
||||
|
||||
/// Padding in pixels to add above and bellow the scrollbar. */
|
||||
/// Padding in pixels to add above and below the scrollbar. */
|
||||
static const _PADDING_LENGTH = 10;
|
||||
|
||||
/// The amount of time to wait before hiding scrollbars after showing them.
|
||||
|
|
|
@ -128,7 +128,7 @@ class _SizeTracker extends RecursiveInfoVisitor {
|
|||
final Map<Info, int> missing = {};
|
||||
|
||||
/// Set of [FunctionInfo]s that appear to be unused by the app (they are not
|
||||
/// registed [coverage]).
|
||||
/// registered [coverage]).
|
||||
final List unused = [];
|
||||
|
||||
/// Tracks the current state of this visitor.
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
// 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.
|
||||
|
||||
/// Command-line tool to convert an info.json file ouputted by dart2js to the
|
||||
/// Command-line tool to convert an info.json file outputted by dart2js to the
|
||||
/// alternative protobuf format.
|
||||
|
||||
import 'dart:io';
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
// This file is a reimplementation of the header file mach-o/loader.h, which is
|
||||
// part of the Apple system headers. All comments, which detail the format of
|
||||
// Mach-O files, have been reproduced from the orginal header.
|
||||
// Mach-O files, have been reproduced from the original header.
|
||||
|
||||
import 'dart:io';
|
||||
import 'dart:typed_data';
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
// --experimental-wasm-type-reflection run_wasm.js \
|
||||
// -- /abs/path/to/<dart_module>.mjs <dart_module>.wasm [<ffi_module>.wasm]
|
||||
//
|
||||
// Please note we require an absolue path for the JS runtime. This is a
|
||||
// Please note we require an absolute path for the JS runtime. This is a
|
||||
// workaround for a discrepancy in D8. Specifically, `import`(used to load .mjs
|
||||
// files) searches for imports relative to run_wasm.js, but `readbuffer`(used to
|
||||
// read in .wasm files) searches relative to CWD. A path relative to
|
||||
|
|
|
@ -356,7 +356,7 @@ class CodeGenerator extends ExpressionVisitor1<w.ValueType, w.ValueType>
|
|||
typeLocals[typeParameters[i]] = paramLocals[parameterOffset + i];
|
||||
}
|
||||
|
||||
// Local for the prameter type if any of the parameters need type checks
|
||||
// Local for the parameter type if any of the parameters need type checks
|
||||
w.Local? parameterExpectedTypeLocal;
|
||||
|
||||
void setupParamLocal(
|
||||
|
|
|
@ -331,7 +331,7 @@ class DispatchTable {
|
|||
// Reference is abstract, do not override inherited concrete member
|
||||
selector.targets[info.classId] ??= reference;
|
||||
} else {
|
||||
// Reference is concrete, override inerited member
|
||||
// Reference is concrete, override inherited member
|
||||
selector.targets[info.classId] = reference;
|
||||
}
|
||||
selectorIds.add(selector.id);
|
||||
|
|
|
@ -401,7 +401,7 @@ class _JSLowerer extends Transformer {
|
|||
/// argument(only for callbacks that take optional parameters), followed by
|
||||
/// all of the arguments to the Dart callback as JS objects. The trampoline
|
||||
/// will `dartifyRaw` all incoming JS objects and then cast them to their
|
||||
/// approriate types, dispatch, and then `jsifyRaw` any returned value.
|
||||
/// appropriate types, dispatch, and then `jsifyRaw` any returned value.
|
||||
/// [_createFunctionTrampoline] Returns a [String] function name representing
|
||||
/// the name of the wrapping function.
|
||||
String _createFunctionTrampoline(Procedure node, FunctionType function) {
|
||||
|
|
|
@ -46,7 +46,7 @@ Map<String, String> _useCdKeys(Map<_CustomDimensions, String> parameters) {
|
|||
///
|
||||
/// [exitCode] is the exit code returned from this invocation of dartdev.
|
||||
///
|
||||
/// [specifiedExperiements] are the experiments passed into the dartdev
|
||||
/// [specifiedExperiments] are the experiments passed into the dartdev
|
||||
/// command. If the command doesn't use the experiments, they are not reported.
|
||||
///
|
||||
/// [commandFlags] are the flags (no values) used to run this command.
|
||||
|
|
|
@ -23,7 +23,7 @@ typedef CompileRequestGeneratorCallback = String Function({
|
|||
|
||||
/// Uses the resident frontend compiler to compute a kernel file for
|
||||
/// [executable]. Throws a [FrontendCompilerException] if the compilation
|
||||
/// fails or if the source code contians compilation errors.
|
||||
/// fails or if the source code contains compilation errors.
|
||||
///
|
||||
/// [executable] is expected to contain a path to the dart source file and
|
||||
/// a package_config file.
|
||||
|
|
|
@ -368,10 +368,10 @@ Future<void> main() async {
|
|||
|
||||
void disabledAnalyticsObject() {
|
||||
test('object', () {
|
||||
var diabledAnalytics = DisabledAnalytics('trackingId', 'appName');
|
||||
expect(diabledAnalytics.trackingId, 'trackingId');
|
||||
expect(diabledAnalytics.applicationName, 'appName');
|
||||
expect(diabledAnalytics.enabled, isFalse);
|
||||
expect(diabledAnalytics.firstRun, isFalse);
|
||||
var disabledAnalytics = DisabledAnalytics('trackingId', 'appName');
|
||||
expect(disabledAnalytics.trackingId, 'trackingId');
|
||||
expect(disabledAnalytics.applicationName, 'appName');
|
||||
expect(disabledAnalytics.enabled, isFalse);
|
||||
expect(disabledAnalytics.firstRun, isFalse);
|
||||
});
|
||||
}
|
||||
|
|
|
@ -1355,7 +1355,7 @@ abstract class DartDebugAdapter<TL extends LaunchRequestArguments,
|
|||
sendResponse(SetExceptionBreakpointsResponseBody());
|
||||
}
|
||||
|
||||
/// Shuts down/detatches from the debugee and cleans up.
|
||||
/// Shuts down/detaches from the debugee and cleans up.
|
||||
///
|
||||
/// This is called by [disconnectRequest] and [terminateRequest] but may also
|
||||
/// be called if the client just disconnects from the server without calling
|
||||
|
@ -1368,7 +1368,7 @@ abstract class DartDebugAdapter<TL extends LaunchRequestArguments,
|
|||
_dds = null;
|
||||
}
|
||||
|
||||
/// Shuts down the debug adapter, including terminating/detatching from the
|
||||
/// Shuts down the debug adapter, including terminating/detaching from the
|
||||
/// debugee if required.
|
||||
@nonVirtual
|
||||
Future<void> shutdown() async {
|
||||
|
|
|
@ -138,7 +138,7 @@ mixin VmServiceInfoFileUtils on FileUtils {
|
|||
/// Creates a temp folder for the VM to write the service-info-file into and
|
||||
/// returns the [File] to use.
|
||||
File generateVmServiceInfoFile() {
|
||||
// Using tmpDir.createTempory() is flakey on Windows+Linux (at least
|
||||
// Using tmpDir.createTemporary() is flakey on Windows+Linux (at least
|
||||
// on GitHub Actions) complaining the file does not exist when creating a
|
||||
// watcher. Creating/watching a folder and writing the file into it seems
|
||||
// to be reliable.
|
||||
|
|
|
@ -6188,7 +6188,7 @@ class ValueFormat {
|
|||
/// The client can use this optional information to present the children in a
|
||||
/// paged UI and fetch them in chunks.
|
||||
class Variable {
|
||||
/// Optional evaluatable name of this variable which can be passed to the
|
||||
/// Optional evaluable name of this variable which can be passed to the
|
||||
/// 'EvaluateRequest' to fetch the variable's value.
|
||||
final String? evaluateName;
|
||||
|
||||
|
|
|
@ -147,7 +147,7 @@ class ClientManager {
|
|||
}
|
||||
};
|
||||
|
||||
/// Checks whether two VM Services are equiavlent.
|
||||
/// Checks whether two VM Services are equivalent.
|
||||
///
|
||||
/// Checking the whole URI will fail if DevTools converted it from HTTP to
|
||||
/// WS, so just checks the host, port and first segment of path (token).
|
||||
|
|
|
@ -1440,7 +1440,7 @@
|
|||
{ "$ref": "#/definitions/Request" },
|
||||
{
|
||||
"type": "object",
|
||||
"description": "Replaces all existing instruction breakpoints. Typically, instruction breakpoints would be set from a diassembly window. \nTo clear all instruction breakpoints, specify an empty array.\nWhen an instruction breakpoint is hit, a 'stopped' event (with reason 'instruction breakpoint') is generated.\nClients should only call this request if the capability 'supportsInstructionBreakpoints' is true.",
|
||||
"description": "Replaces all existing instruction breakpoints. Typically, instruction breakpoints would be set from a disassembly window. \nTo clear all instruction breakpoints, specify an empty array.\nWhen an instruction breakpoint is hit, a 'stopped' event (with reason 'instruction breakpoint') is generated.\nClients should only call this request if the capability 'supportsInstructionBreakpoints' is true.",
|
||||
"properties": {
|
||||
"command": {
|
||||
"type": "string",
|
||||
|
@ -3370,7 +3370,7 @@
|
|||
},
|
||||
"evaluateName": {
|
||||
"type": "string",
|
||||
"description": "Optional evaluatable name of this variable which can be passed to the 'EvaluateRequest' to fetch the variable's value."
|
||||
"description": "Optional evaluable name of this variable which can be passed to the 'EvaluateRequest' to fetch the variable's value."
|
||||
},
|
||||
"variablesReference": {
|
||||
"type": "integer",
|
||||
|
|
|
@ -127,7 +127,7 @@ class SourceMapPrintingContext extends SimpleJavaScriptPrintingContext {
|
|||
// at its exit, so this provides a mapping for that location.
|
||||
var column = _column - 1;
|
||||
if (column >= 0) {
|
||||
// Adjust the colum, because any ending brace or semicolon is already in
|
||||
// Adjust the column, because any ending brace or semicolon is already in
|
||||
// the output.
|
||||
var jsEnd =
|
||||
SourceLocation(buffer.length - 1, line: _line, column: column);
|
||||
|
|
|
@ -72,7 +72,7 @@ class AssetFileSystemEntity implements FileSystemEntity {
|
|||
if (response.statusCode != HttpStatus.ok) {
|
||||
unawaited(_ignore(response));
|
||||
throw FileSystemException(
|
||||
uri, 'Asset rerver returned ${response.statusCode}');
|
||||
uri, 'Asset server returned ${response.statusCode}');
|
||||
}
|
||||
return await collectBytes(response);
|
||||
});
|
||||
|
|
|
@ -51,7 +51,7 @@ NameConflictDuplicateMethod:
|
|||
int /*@error=DuplicatedName*/ m /*@errorEnd*/(StringBuffer foo) => '$foo';
|
||||
}
|
||||
|
||||
NameConflictInconsitentMemberKind:
|
||||
NameConflictInconsistentMemberKind:
|
||||
description: "A method and a field have the same name."
|
||||
recovery:
|
||||
- "both can be seen in the generated output."
|
||||
|
|
|
@ -1128,7 +1128,7 @@ class IncrementalCompiler implements IncrementalKernelGenerator {
|
|||
/// uriToSource (used in places for dependency tracking), the incremental
|
||||
/// serializer (they are no longer kept up-to-date) and the DillTarget
|
||||
/// (to avoid leaks).
|
||||
/// We also have to remove any component problems beloning to any such
|
||||
/// We also have to remove any component problems belonging to any such
|
||||
/// no-longer-used library (to avoid re-issuing errors about no longer
|
||||
/// relevant stuff).
|
||||
void _cleanupRemovedBuilders(IncrementalKernelTarget? lastGoodKernelTarget,
|
||||
|
|
|
@ -2451,7 +2451,7 @@ class SourceLibraryBuilder extends LibraryBuilderImpl {
|
|||
List<TypeBuilder>? applicationTypeArguments;
|
||||
if (isNamedMixinApplication) {
|
||||
// If this is a named mixin application, it must be given all the
|
||||
// declarated type variables.
|
||||
// declared type variables.
|
||||
applicationTypeVariables = typeVariables;
|
||||
} else {
|
||||
// Otherwise, we pass the fresh type variables to the mixin
|
||||
|
|
|
@ -418,7 +418,7 @@ class BoxedInt {
|
|||
BoxedInt(this.value);
|
||||
}
|
||||
|
||||
// TODO(jensj): Better support for not carring about preexisting spaces, e.g.
|
||||
// TODO(jensj): Better support for not caring about preexisting spaces, e.g.
|
||||
// "foo(int a, int b)" will be different from "foo(int a,int b)".
|
||||
// TODO(jensj): Specify scanner settings to match that of the compiler.
|
||||
// TODO(jensj): Canonicalize show/hides on imports/exports. E.g.
|
||||
|
|
|
@ -75,7 +75,7 @@
|
|||
# version (or add the missing needed one(s)) to avoid triggering an assert.
|
||||
#
|
||||
# `#nameOKEmpty`: name (as string). Will use an "(unnamed)" default message if
|
||||
# the string is null or empty. Otherwise see the describtion above.
|
||||
# the string is null or empty. Otherwise see the description above.
|
||||
#
|
||||
# `#names`: A list of names (strings).
|
||||
#
|
||||
|
@ -91,7 +91,7 @@
|
|||
#
|
||||
# `#stringOKEmpty`: string (that isn't a name). Will use an "(empty)" default
|
||||
# message if the string is null or empty.
|
||||
# Otherwise see the describtion above.
|
||||
# Otherwise see the description above.
|
||||
#
|
||||
# `#type`, #type2`, `#type3`: Kernel types.
|
||||
#
|
||||
|
|
|
@ -119,9 +119,7 @@ became
|
|||
beforehand
|
||||
behave
|
||||
believe
|
||||
bellow
|
||||
belonging
|
||||
beloning
|
||||
benchmark
|
||||
benchmarked
|
||||
benchmarker
|
||||
|
@ -189,7 +187,6 @@ cardinality
|
|||
caret
|
||||
carets
|
||||
carriage
|
||||
carring
|
||||
cascades
|
||||
casing
|
||||
cast
|
||||
|
@ -1025,7 +1022,6 @@ paulberry
|
|||
pay
|
||||
payload
|
||||
payloads
|
||||
paylod
|
||||
pdf
|
||||
pedantic
|
||||
per
|
||||
|
@ -1433,7 +1429,6 @@ subname
|
|||
subnode
|
||||
subnodes
|
||||
subpatterns
|
||||
subpattterns
|
||||
subscription
|
||||
subsection
|
||||
subsections
|
||||
|
|
|
@ -398,6 +398,7 @@ capturing
|
|||
care
|
||||
careful
|
||||
cares
|
||||
caring
|
||||
carries
|
||||
carry
|
||||
cascade
|
||||
|
@ -748,7 +749,6 @@ deciding
|
|||
decimal
|
||||
decision
|
||||
declarable
|
||||
declarated
|
||||
declaration
|
||||
declaration's
|
||||
declarations
|
||||
|
|
|
@ -163,7 +163,7 @@ The latter version tests what happens when:
|
|||
|
||||
* A modification is made to a top-level method.
|
||||
|
||||
* A modifiction is made to the main method, which is a special case.
|
||||
* A modification is made to the main method, which is a special case.
|
||||
|
||||
* Two more selectors are added to tree-shaking, the enqueuer: 'get:bar',
|
||||
and 'set:bar'.
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
# BSD-style license that can be found in the LICENSE.md file.
|
||||
|
||||
main.dart.patch: |
|
||||
// Similiar to call_named_arguments_2 but where the change in the way the method
|
||||
// Similar to call_named_arguments_2 but where the change in the way the method
|
||||
// with named parameters is called happens in an instance method belonging to
|
||||
// the same class.
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
# BSD-style license that can be found in the LICENSE.md file.
|
||||
|
||||
main.dart.patch: |
|
||||
// Similiar to constant_retaining_2, but tests that constant handling is still
|
||||
// Similar to constant_retaining_2, but tests that constant handling is still
|
||||
// correct even if an unrelated constant is introduced and removed again.
|
||||
var constant;
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
# for details. All rights reserved. Use of this source code is governed by a
|
||||
# BSD-style license that can be found in the LICENSE.md file.
|
||||
|
||||
# When the entry is not given as a package-url, but is intepreted as one
|
||||
# When the entry is not given as a package-url, but is interpreted as one
|
||||
# the library should still be included in the output.
|
||||
|
||||
type: newworld
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
# for details. All rights reserved. Use of this source code is governed by a
|
||||
# BSD-style license that can be found in the LICENSE.md file.
|
||||
|
||||
# When the entry is not given as a package-url, but is intepreted as one
|
||||
# When the entry is not given as a package-url, but is interpreted as one
|
||||
# the library should still be included in the output -
|
||||
# even if there's errors in main.
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
# for details. All rights reserved. Use of this source code is governed by a
|
||||
# BSD-style license that can be found in the LICENSE.md file.
|
||||
|
||||
# When the entry is not given as a package-url, but is intepreted as one
|
||||
# When the entry is not given as a package-url, but is interpreted as one
|
||||
# the library should still be included in the output - even if there's no main.
|
||||
|
||||
type: newworld
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
# BSD-style license that can be found in the LICENSE.md file.
|
||||
|
||||
# Compile an application, change a file, but don't change the outline.
|
||||
# Use it as a mixin, though, so we cannot neccesarily rebuild the bodies only.
|
||||
# Use it as a mixin, though, so we cannot necessarily rebuild the bodies only.
|
||||
|
||||
type: newworld
|
||||
worlds:
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
# BSD-style license that can be found in the LICENSE.md file.
|
||||
|
||||
# Compile an application, change a file, but don't change the outline.
|
||||
# Use it as a mixin, though, so we cannot neccesarily rebuild the bodies only.
|
||||
# Use it as a mixin, though, so we cannot necessarily rebuild the bodies only.
|
||||
# Have the thing being mixed in be in a part.
|
||||
|
||||
type: newworld
|
||||
|
|
|
@ -66,7 +66,7 @@ nnbd_mixed/mixin_from_opt_in/main.no_link: SemiFuzzFailure
|
|||
regress/utf_16_le_content.crash: SemiFuzzCrash
|
||||
static_field_lowering/opt_in: SemiFuzzFailure
|
||||
|
||||
# These tests have "privacy issues" and isn't compatiable with splitting files (fuzzing):
|
||||
# These tests have "privacy issues" and isn't compatible with splitting files (fuzzing):
|
||||
dart2js/mixin_default_values/main: semiFuzzFailureOnForceRebuildBodies # private method
|
||||
dartdevc/factory_patch/main: semiFuzzFailureOnForceRebuildBodies # needs custom libraries.json (and platform?) not setup here
|
||||
dartdevc/private_covariant: semiFuzzFailureOnForceRebuildBodies # private method in class
|
||||
|
|
|
@ -2,7 +2,7 @@ The frontend_server package is used by both the flutter command line tool and th
|
|||
|
||||
## API Stability
|
||||
|
||||
Changes to the command line API or behavior should be tested against the follwing test suites (in addition to normal HHH testing):
|
||||
Changes to the command line API or behavior should be tested against the following test suites (in addition to normal HHH testing):
|
||||
* flutter_tools: https://github.com/flutter/flutter/tree/master/packages/flutter_tools
|
||||
* frontend_server_client: https://github.com/dart-lang/webdev/tree/master/frontend_server_client
|
||||
|
||||
|
|
|
@ -126,7 +126,7 @@ class ResidentCompiler {
|
|||
await _getSourceFilesToRecompile(_lastCompileStartTime);
|
||||
// No changes to source files detected and cached kernel file exists
|
||||
// If a kernel file is removed in between compilation requests,
|
||||
// fall through to procude the kernel in recompileDelta.
|
||||
// fall through to produce the kernel in recompileDelta.
|
||||
if (invalidatedUris.isEmpty && _outputDill.existsSync()) {
|
||||
return _encodeCompilerOutput(
|
||||
_outputDill.path, _formattedOutput, _compiler.errors.length,
|
||||
|
@ -338,7 +338,7 @@ class ResidentFrontendServer {
|
|||
'--protobuf-tree-shaker-v2',
|
||||
if (request['define'] != null)
|
||||
for (var define in request['define']) define,
|
||||
if (request['enable-experiement'] != null)
|
||||
if (request['enable-experiment'] != null)
|
||||
for (var experiment in request['enable-experiment']) experiment,
|
||||
]);
|
||||
}
|
||||
|
@ -364,7 +364,7 @@ class ResidentFrontendServer {
|
|||
bool? treeShakeWriteOnlyFields,
|
||||
bool? protobufTreeShakerV2,
|
||||
List<String>? define,
|
||||
List<String>? enableExperiement,
|
||||
List<String>? enableExperiment,
|
||||
bool verbose = false}) {
|
||||
return jsonEncode(<String, Object>{
|
||||
"command": "compile",
|
||||
|
@ -373,7 +373,7 @@ class ResidentFrontendServer {
|
|||
if (aot != null) "aot": true,
|
||||
if (define != null) "define": define,
|
||||
if (enableAsserts != null) "enable-asserts": true,
|
||||
if (enableExperiement != null) "enable-experiment": enableExperiement,
|
||||
if (enableExperiment != null) "enable-experiment": enableExperiment,
|
||||
if (packages != null) "packages": packages,
|
||||
if (protobufTreeShakerV2 != null) "protobuf-tree-shaker-v2": true,
|
||||
if (rta != null) "rta": true,
|
||||
|
|
|
@ -126,7 +126,7 @@ Future compileTests(
|
|||
}));
|
||||
|
||||
// Split into NNBD Strong and Weak so only the ones that match are
|
||||
// compiled togeher. If mixing-and-matching the first file (which could
|
||||
// compiled together. If mixing-and-matching the first file (which could
|
||||
// be either) will setup the compiler which can lead to compilation errors
|
||||
// for another file, for instance if the first one is strong but a
|
||||
// subsequent one tries to opt out (i.e. is weak) an error is issued that
|
||||
|
|
|
@ -121,7 +121,7 @@ void main() async {
|
|||
soundNullSafety: true,
|
||||
verbosity: 'all',
|
||||
define: <String>['-Dvar=2'],
|
||||
enableExperiement: <String>['experiemental-flag=vm_name'],
|
||||
enableExperiment: <String>['experimental-flag=vm_name'],
|
||||
)));
|
||||
|
||||
expect(compileResult1['success'], true);
|
||||
|
|
|
@ -461,7 +461,7 @@ class WidgetCreatorTracker {
|
|||
if (initializer is RedirectingInitializer) {
|
||||
if (initializer.target.enclosingClass == clazz) {
|
||||
// We need to handle this constructor first or the call to
|
||||
// addDebugLocationArgument bellow will fail due to the named
|
||||
// addDebugLocationArgument below will fail due to the named
|
||||
// parameter not yet existing on the constructor.
|
||||
handleConstructor(initializer.target);
|
||||
}
|
||||
|
|
|
@ -10,7 +10,7 @@ part "src/part_of_ex2.7_v_ex2.7.dart";
|
|||
// Specification requires the part file to have
|
||||
// the same explicit language version marker
|
||||
// as the including library,
|
||||
// not just the same languge version.
|
||||
// not just the same language version.
|
||||
part "src/part_of_ex2.7_v_im2.7.dart";
|
||||
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
// [analyzer] COMPILE_TIME_ERROR.INCONSISTENT_LANGUAGE_VERSION_OVERRIDE
|
||||
|
|
|
@ -9,7 +9,7 @@ part "src/part_of_im2.7_v_im2.7.dart";
|
|||
// Specification requires the part fsrc/ile to have
|
||||
// the same explicit language version marker
|
||||
// as the including library,
|
||||
// not just the same languge version.
|
||||
// not just the same language version.
|
||||
part "src/part_of_im2.7_v_ex2.7.dart";
|
||||
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
// [analyzer] COMPILE_TIME_ERROR.INCONSISTENT_LANGUAGE_VERSION_OVERRIDE
|
||||
|
|
|
@ -294,7 +294,7 @@ const _Protected protected = _Protected();
|
|||
/// marked `sealed` and it extends, mixes in, or implements the interface of
|
||||
/// another class or mixin which prevents subclassing.
|
||||
/// * We give a warning if a subclass or sub-mixin extends, mixes in, implements
|
||||
/// the the interface of, or has as an on type a class or mixin which prevents
|
||||
/// the interface of, or has as an on type a class or mixin which prevents
|
||||
/// subclassing, and the subclass or sub-mixin has no modifier or is marked
|
||||
/// `interface` or `base`.
|
||||
///
|
||||
|
|
|
@ -134,7 +134,7 @@ final _traceLineRE =
|
|||
/// sections.
|
||||
///
|
||||
/// Unless forceHexadecimal is true, an integer offset without a "0x" prefix or
|
||||
/// any hexdecimal digits will be parsed as decimal.
|
||||
/// any hexadecimal digits will be parsed as decimal.
|
||||
///
|
||||
/// Returns null if the string is not of the expected format.
|
||||
PCOffset? tryParseSymbolOffset(String s,
|
||||
|
|
|
@ -997,7 +997,7 @@ class DynamicTable extends Section {
|
|||
// Each entry is a tag and a value, both native word sized.
|
||||
final tag = _readElfNative(sectionReader);
|
||||
final value = _readElfNative(sectionReader);
|
||||
// A DT_NULL entry signfies the end of entries.
|
||||
// A DT_NULL entry signifies the end of entries.
|
||||
if (tag == DynamicTableTag.DT_NULL.index) break;
|
||||
entries[tag] = value;
|
||||
}
|
||||
|
|
|
@ -144,7 +144,7 @@ class AtomicEditInfo {
|
|||
/// suffixing it with additional text, or deleting some of the text it contains.
|
||||
/// When the text being produced represents an expression, [EditPlan] also keeps
|
||||
/// track of the precedence of the expression and whether it ends in a
|
||||
/// casade--this allows automatic insertion of parentheses when necessary, as
|
||||
/// cascade--this allows automatic insertion of parentheses when necessary, as
|
||||
/// well as removal of parentheses when they become unnecessary.
|
||||
///
|
||||
/// Typical usage will be to produce one or more [EditPlan] objects representing
|
||||
|
@ -1753,7 +1753,7 @@ extension AtomicEditMap on Map<int?, List<AtomicEdit>>? {
|
|||
}
|
||||
}
|
||||
|
||||
/// Extension allowing an AstNode to be queried to see if it ends in a casade
|
||||
/// Extension allowing an AstNode to be queried to see if it ends in a cascade
|
||||
/// expression.
|
||||
extension EndsInCascadeExtension on AstNode {
|
||||
@visibleForTesting
|
||||
|
|
|
@ -19,7 +19,7 @@ abstract class OffsetMapper {
|
|||
_SimpleSourceEditMapper(offset, 0, length);
|
||||
|
||||
/// Return a mapper representing the file modified by an insertion at [offset]
|
||||
/// with [replacemnet] text overwriting the given [length].
|
||||
/// with [replacement] text overwriting the given [length].
|
||||
factory OffsetMapper.forReplacement(
|
||||
int offset, int length, String replacement) =>
|
||||
_SimpleSourceEditMapper(offset, length, replacement.length);
|
||||
|
|
|
@ -99,14 +99,14 @@ class Variables {
|
|||
Source? source, TypeAnnotation typeAnnotation) {
|
||||
var annotationsInSource = _decoratedTypeAnnotations[source];
|
||||
if (annotationsInSource == null) {
|
||||
throw StateError('No declarated type annotations in ${source!.fullName}; '
|
||||
throw StateError('No declared type annotations in ${source!.fullName}; '
|
||||
'expected one for ${typeAnnotation.toSource()} '
|
||||
'(offset ${typeAnnotation.offset})');
|
||||
}
|
||||
DecoratedType? decoratedTypeAnnotation = annotationsInSource[
|
||||
uniqueIdentifierForSpan(typeAnnotation.offset, typeAnnotation.end)];
|
||||
if (decoratedTypeAnnotation == null) {
|
||||
throw StateError('Missing declarated type annotation'
|
||||
throw StateError('Missing declared type annotation'
|
||||
' in ${source!.fullName}; for ${typeAnnotation.toSource()}');
|
||||
}
|
||||
return decoratedTypeAnnotation;
|
||||
|
@ -449,7 +449,7 @@ class Variables {
|
|||
// span = end*(end + 1) / 2
|
||||
// end^2 + end - 2*span = 0
|
||||
// end = -1 +/- sqrt(1 + 8*span)
|
||||
// We can reslove the `+/-` to `+` (since the result we seek can't be
|
||||
// We can resolve the `+/-` to `+` (since the result we seek can't be
|
||||
// negative), so that yields:
|
||||
// end = sqrt(1 + 8*span) - 1
|
||||
int end = (math.sqrt(1 + 8.0 * span) - 1).floor();
|
||||
|
|
|
@ -1661,7 +1661,7 @@ class C {
|
|||
// `throw c..d`. In an ideal world, we would see that we can just keep the
|
||||
// parens we have, but this is difficult because we don't see that the
|
||||
// parens are needed until we walk far enough up the AST to see that we're
|
||||
// inside a casade expression. So we drop the parens and then create new
|
||||
// inside a cascade expression. So we drop the parens and then create new
|
||||
// ones surrounding `throw c..d`.
|
||||
//
|
||||
// Strictly speaking the code we produce is correct, it's just making a
|
||||
|
|
|
@ -1688,7 +1688,7 @@ _f(int/*?*/ x) {
|
|||
await analyze('int f(num x) => x;');
|
||||
var xRef = findNode.simple('x;');
|
||||
visitSubexpression(xRef, 'int', changes: {
|
||||
xRef: isNodeChangeForExpression.havingIndroduceAsWithInfo(
|
||||
xRef: isNodeChangeForExpression.havingIntroduceAsWithInfo(
|
||||
'int',
|
||||
isInfo(NullabilityFixDescription.downcastExpression,
|
||||
{FixReasonTarget.root: isEdge}))
|
||||
|
@ -3528,7 +3528,7 @@ int f(Object o) {
|
|||
''');
|
||||
var xRef = findNode.simple('o;');
|
||||
visitSubexpression(xRef, 'int', changes: {
|
||||
xRef: isNodeChangeForExpression.havingIndroduceAsWithInfo(
|
||||
xRef: isNodeChangeForExpression.havingIntroduceAsWithInfo(
|
||||
'int',
|
||||
isInfo(NullabilityFixDescription.otherCastExpression,
|
||||
{FixReasonTarget.root: isEdge}))
|
||||
|
@ -3951,7 +3951,7 @@ extension _NodeChangeForExpressionExtension<T extends NodeChangeForExpression>
|
|||
.having((c) => c.expressionChangeInfos.single,
|
||||
'expressionChangeInfos.single', infoMatcher);
|
||||
|
||||
TypeMatcher<T> havingIndroduceAsWithInfo(
|
||||
TypeMatcher<T> havingIntroduceAsWithInfo(
|
||||
dynamic typeStringMatcher, dynamic infoMatcher) =>
|
||||
havingExpressionChange(
|
||||
TypeMatcher<IntroduceAsChange>().having(
|
||||
|
|
|
@ -720,7 +720,7 @@ class NullabilityNodeTest {
|
|||
expect(nodeB.outerCompoundNodes, [substNode]);
|
||||
}
|
||||
|
||||
void test_unconstrainted_node_non_nullable() {
|
||||
void test_unconstrained_node_non_nullable() {
|
||||
var n1 = newNode(1);
|
||||
propagate();
|
||||
expect(n1.isNullable, false);
|
||||
|
|
|
@ -261,7 +261,7 @@ cc/IsolateReload_NotEnumToEnum: Skip
|
|||
cc/IsolateReload_NotTypedefToTypedef: Fail
|
||||
cc/IsolateReload_PendingSuperCall: Fail
|
||||
cc/IsolateReload_PrefixImportedLibModified: Crash
|
||||
cc/IsolateReload_RunNewFieldInitialiazersSuperClass: Skip
|
||||
cc/IsolateReload_RunNewFieldInitializersSuperClass: Skip
|
||||
cc/IsolateReload_RunNewFieldInitializers: Skip
|
||||
cc/IsolateReload_RunNewFieldInitializersMutateStaticField: Skip
|
||||
cc/IsolateReload_RunNewFieldInitializersReferenceStaticField: Skip
|
||||
|
|
|
@ -122,7 +122,7 @@ Future<Iterable<String>> lsGsutil(String directory) async {
|
|||
Future cpGsutil(String source, String destination) =>
|
||||
runGsutil(["cp", source, destination]);
|
||||
|
||||
/// Copies a directory recursively to or from cloud strorage.
|
||||
/// Copies a directory recursively to or from cloud storage.
|
||||
Future cpRecursiveGsutil(String source, String destination) =>
|
||||
runGsutil(["-m", "cp", "-r", "-Z", source, destination]);
|
||||
|
||||
|
|
|
@ -107,7 +107,7 @@ class CommandOutput {
|
|||
|
||||
bool _didFail(TestCase testCase) => exitCode != 0 && !hasCrashed;
|
||||
|
||||
bool get canRunDependendCommands {
|
||||
bool get canRunDependentCommands {
|
||||
// FIXME(kustermann): We may need to change this
|
||||
return !hasTimedOut && exitCode == 0;
|
||||
}
|
||||
|
@ -1220,7 +1220,7 @@ class VMKernelCompilationCommandOutput extends CompilationCommandOutput {
|
|||
: super(command, exitCode, timedOut, stdout, stderr, time,
|
||||
compilationSkipped);
|
||||
|
||||
bool get canRunDependendCommands {
|
||||
bool get canRunDependentCommands {
|
||||
// See [BatchRunnerProcess]: 0 means success, 1 means compile-time error.
|
||||
// TODO(asgerf): When the frontend supports it, continue running even if
|
||||
// there were compile-time errors. See kernel_sdk issue #18.
|
||||
|
@ -1309,7 +1309,7 @@ class VMKernelCompilationCommandOutput extends CompilationCommandOutput {
|
|||
///
|
||||
/// This ensures we test that the DartVM produces correct CompileTime errors
|
||||
/// as it is supposed to for our test suites.
|
||||
bool get successful => canRunDependendCommands;
|
||||
bool get successful => canRunDependentCommands;
|
||||
}
|
||||
|
||||
class JSCommandLineOutput extends CommandOutput
|
||||
|
@ -1416,7 +1416,7 @@ class ScriptCommandOutput extends CommandOutput {
|
|||
|
||||
Expectation realResult(TestCase testCase) => _result;
|
||||
|
||||
bool get canRunDependendCommands => _result == Expectation.pass;
|
||||
bool get canRunDependentCommands => _result == Expectation.pass;
|
||||
|
||||
bool get successful => _result == Expectation.pass;
|
||||
}
|
||||
|
|
|
@ -704,7 +704,7 @@ class DevCompilerConfiguration extends CompilerConfiguration {
|
|||
|
||||
if (_configuration.runtime == Runtime.d8) {
|
||||
// TODO(sigmund): ddc should have a flag to emit an entrypoint file like
|
||||
// the one below, otherwise it is succeptible to break, for example, if
|
||||
// the one below, otherwise it is susceptible to break, for example, if
|
||||
// library naming conventions were to change in the future.
|
||||
runFile = "$tempDir/$moduleName.d8.js";
|
||||
var nonNullAsserts = arguments.contains('--null-assertions');
|
||||
|
|
|
@ -230,14 +230,14 @@ class TestConfiguration {
|
|||
} else {
|
||||
var isReload = hotReload || hotReloadRollback;
|
||||
|
||||
var compilerMulitiplier = compilerConfiguration.timeoutMultiplier;
|
||||
var compilerMultiplier = compilerConfiguration.timeoutMultiplier;
|
||||
var runtimeMultiplier = runtimeConfiguration.timeoutMultiplier(
|
||||
mode: mode,
|
||||
isChecked: isChecked,
|
||||
isReload: isReload,
|
||||
arch: architecture);
|
||||
|
||||
_timeout = 60 * compilerMulitiplier * runtimeMultiplier;
|
||||
_timeout = 60 * compilerMultiplier * runtimeMultiplier;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -101,7 +101,7 @@ class _PathNode {
|
|||
/// The glob child directory and file paths within this directory.
|
||||
final Map<RegExp, _PathNode> regExpChildren = {};
|
||||
|
||||
/// The test expectatations that any test within this directory should
|
||||
/// The test expectations that any test within this directory should
|
||||
/// include.
|
||||
final Set<Expectation> expectations = {};
|
||||
|
||||
|
|
|
@ -170,7 +170,7 @@ class ProcessQueue {
|
|||
setupForRunning(testCaseEnqueuer);
|
||||
}
|
||||
|
||||
// Start enqueing all TestCases
|
||||
// Start enqueuing all TestCases
|
||||
testCaseEnqueuer.enqueueTestSuites(testSuites);
|
||||
}
|
||||
|
||||
|
@ -349,7 +349,7 @@ class CommandEnqueuer {
|
|||
/// [CommandOutput]s for the finished commands.
|
||||
///
|
||||
/// It provides a [done] future, which will complete once there are no more
|
||||
/// nodes left in the states Initialized/Waiting/Enqueing/Processing
|
||||
/// nodes left in the states Initialized/Waiting/Enqueuing/Processing
|
||||
/// and the [executor] has cleaned up its resources.
|
||||
class CommandQueue {
|
||||
final Graph<Command> graph;
|
||||
|
@ -433,7 +433,7 @@ class CommandQueue {
|
|||
assert(command == output.command);
|
||||
|
||||
_commandOutputStream.add(output);
|
||||
if (output.canRunDependendCommands) {
|
||||
if (output.canRunDependentCommands) {
|
||||
graph.changeState(node, NodeState.successful);
|
||||
} else {
|
||||
graph.changeState(node, NodeState.failed);
|
||||
|
|
|
@ -47,7 +47,7 @@ Future runBatchModeCompiler() async {
|
|||
// Important things to note:
|
||||
//
|
||||
// * Our global transformations must never alter the AST structures which
|
||||
// the statefull IKG generator keeps across compilations.
|
||||
// the stateful IKG generator keeps across compilations.
|
||||
// => We need to make our own copy.
|
||||
//
|
||||
// * We must ensure the stateful IKG generator keeps giving us all the
|
||||
|
|
|
@ -665,7 +665,7 @@ Target? createFrontEndTarget(String targetName,
|
|||
|
||||
/// Create a front-end file system.
|
||||
///
|
||||
/// If requested, create a virtual mutli-root file system and/or an http aware
|
||||
/// If requested, create a virtual multi-root file system and/or an http aware
|
||||
/// file system.
|
||||
FileSystem createFrontEndFileSystem(
|
||||
String? multiRootFileSystemScheme, List<String>? multiRootFileSystemRoots,
|
||||
|
|
|
@ -7,7 +7,7 @@ import 'package:kernel/kernel.dart';
|
|||
/// Converts a [jsonObject] into a kernel [Constant].
|
||||
///
|
||||
/// [jsonObject] must consist only of [double], [int], [String], [List], and
|
||||
/// [Map] recurively.
|
||||
/// [Map] recursively.
|
||||
Constant jsonToKernelConstant(Object jsonObject) {
|
||||
if (jsonObject is int) {
|
||||
return IntConstant(jsonObject);
|
||||
|
|
|
@ -297,7 +297,7 @@ mixin FinalizableTransformer on Transformer {
|
|||
/// executed multiple times. The context of this closure is restored on
|
||||
/// re-execution. These two things make it a continuation.
|
||||
/// The [YieldStatement]s are compiled into returns from that closure.
|
||||
/// When inlining the iterator machinery and eleminating dead code, the
|
||||
/// When inlining the iterator machinery and eliminating dead code, the
|
||||
/// compiler can see that we will never execute a re-entry if we just ask for
|
||||
/// only the first value of a stream from a sync* function.
|
||||
/// So, we need to insert fences for yields as if they were returns in sync*
|
||||
|
|
|
@ -52,7 +52,7 @@ class Struct9 extends Struct {
|
|||
external Pointer notEmpty;
|
||||
}
|
||||
|
||||
/// Not tetained because of FFI callback not being reachable.
|
||||
/// Not retained because of FFI callback not being reachable.
|
||||
class Struct10 extends Struct {
|
||||
external Pointer notEmpty;
|
||||
}
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
// 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.
|
||||
|
||||
/// This tool creates interactive navigatable binary size reports from
|
||||
/// This tool creates interactive navigable binary size reports from
|
||||
/// JSON file generated by the AOT compiler's --print-instructions-sizes-to
|
||||
/// flag.
|
||||
///
|
||||
|
|
|
@ -891,7 +891,7 @@ dart_executable("dart_precompiled_runtime_product") {
|
|||
extra_deps += [ ":elf_loader_product" ]
|
||||
}
|
||||
|
||||
# This flag is set set in runtime/runtime_args.gni
|
||||
# This flag is set in runtime/runtime_args.gni
|
||||
# The analyze_snapshot tool is only supported on 64 bit AOT builds running under
|
||||
# linux and android platforms
|
||||
if (build_analyze_snapshot) {
|
||||
|
|
|
@ -310,7 +310,7 @@ static ArrayPtr GetAssetLocation(Thread* const thread, const String& asset) {
|
|||
//
|
||||
// The |asset_location| is formatted as follows:
|
||||
// ['<path_type>', '<path (optional)>']
|
||||
// The |asset_location| is comform to: pkg/vm/lib/native_assets/validator.dart
|
||||
// The |asset_location| is conform to: pkg/vm/lib/native_assets/validator.dart
|
||||
static void* FfiResolveAsset(Thread* const thread,
|
||||
const Array& asset_location,
|
||||
const String& symbol,
|
||||
|
|
|
@ -16,9 +16,9 @@ main() {
|
|||
|
||||
var internedA = intern(a);
|
||||
Expect.equals(a, internedA);
|
||||
// Likely, but not guarenteed: Expect.identical(a, internedA);
|
||||
// Likely, but not guaranteed: Expect.identical(a, internedA);
|
||||
var internedB = intern(b);
|
||||
Expect.equals(b, internedB);
|
||||
// Likely, but not guarenteed: Expect.identical(a, internedB);
|
||||
// Likely, but not guaranteed: Expect.identical(a, internedB);
|
||||
Expect.identical(internedA, internedB);
|
||||
}
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue