Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(136)

Side by Side Diff: pkg/front_end/lib/src/fasta/kernel/kernel_library_builder.dart

Issue 2916333002: Setup correct scope for initializers and complain about fields initialized more than once. (Closed)
Patch Set: More typos. Created 3 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2016, 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 library fasta.kernel_library_builder; 5 library fasta.kernel_library_builder;
6 6
7 import 'package:front_end/src/scanner/token.dart' show Token; 7 import 'package:front_end/src/scanner/token.dart' show Token;
8 8
9 import 'package:kernel/ast.dart'; 9 import 'package:kernel/ast.dart';
10 10
(...skipping 445 matching lines...) Expand 10 before | Expand all | Expand 10 after
456 KernelNamedTypeBuilder supertype = applyMixins(mixinApplication, 456 KernelNamedTypeBuilder supertype = applyMixins(mixinApplication,
457 metadata: metadata, 457 metadata: metadata,
458 name: name, 458 name: name,
459 typeVariables: typeVariables, 459 typeVariables: typeVariables,
460 modifiers: modifiers, 460 modifiers: modifiers,
461 interfaces: interfaces, 461 interfaces: interfaces,
462 charOffset: charOffset); 462 charOffset: charOffset);
463 checkTypeVariables(typeVariables, supertype.builder); 463 checkTypeVariables(typeVariables, supertype.builder);
464 } 464 }
465 465
466 @override
466 void addField(List<MetadataBuilder> metadata, int modifiers, 467 void addField(List<MetadataBuilder> metadata, int modifiers,
467 KernelTypeBuilder type, String name, int charOffset, Token initializer) { 468 KernelTypeBuilder type, String name, int charOffset, Token initializer) {
468 addBuilder( 469 addBuilder(
469 name, 470 name,
470 new KernelFieldBuilder( 471 new KernelFieldBuilder(
471 metadata, type, name, modifiers, this, charOffset, initializer), 472 metadata, type, name, modifiers, this, charOffset, initializer),
472 charOffset); 473 charOffset);
473 } 474 }
474 475
475 String computeAndValidateConstructorName(String name, int charOffset) { 476 String computeAndValidateConstructorName(String name, int charOffset) {
(...skipping 371 matching lines...) Expand 10 before | Expand all | Expand 10 after
847 mixinApplicationClasses.putIfAbsent(name, () => builder); 848 mixinApplicationClasses.putIfAbsent(name, () => builder);
848 if (existing != builder) { 849 if (existing != builder) {
849 part.scope.local.remove(name); 850 part.scope.local.remove(name);
850 } 851 }
851 }); 852 });
852 super.includePart(part); 853 super.includePart(part);
853 nativeMethods.addAll(part.nativeMethods); 854 nativeMethods.addAll(part.nativeMethods);
854 boundlessTypeVariables.addAll(part.boundlessTypeVariables); 855 boundlessTypeVariables.addAll(part.boundlessTypeVariables);
855 } 856 }
856 } 857 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698