|
|
Chromium Code Reviews|
Created:
7 years, 6 months ago by ahe Modified:
7 years, 6 months ago CC:
reviews_dartlang.org Visibility:
Public. |
DescriptionSet the supertype to avoid loop.
R=johnniwinther@google.com, karlklose@google.com
Committed: https://code.google.com/p/dart/source/detail?r=23852
Patch Set 1 : #
Messages
Total messages: 6 (0 generated)
lgtm
LGTM.
Message was sent while issue was closed.
Committed patchset #1 manually as r23852 (presubmit successful).
Message was sent while issue was closed.
On 2013/06/11 13:47:45, ahe wrote:
> Committed patchset #1 manually as r23852 (presubmit successful).
FYI, this is breaking host-checked mode when using mixins:
FAILED: dart2js-d8-checked release_ia32 language/mixin_cyclic_test/01
Expected: pass
Actual: crash
Compile-time error expected.
CommandOutput[0]:
stdout:
out/ReleaseIA32/generated_tests/language/mixin_cyclic_test_01.dart:14:21: C2
creates a cycle in the class hierarchy
typedef C2 = S with C2; /// 01: compile-time error
^^
out/ReleaseIA32/generated_tests/language/mixin_cyclic_test_01.dart:14:1: Error:
The compiler crashed when compiling this element.
typedef C2 = S with C2; /// 01: compile-time error
^^^^^^^
The compiler is broken.
When compiling the above element, the compiler crashed. It is not
possible to tell if this is caused by a problem in your program or
not. Regardless, the compiler should not crash.
The Dart team would greatly appreciate if you would take a moment to
report this problem at http://dartbug.com/new.
Please include the following information:
* the name and version of your operating system,
* the Dart SDK build number (build number could not be determined), and
* the entire message you see here (including the full stack trace
below as well as the source location above).
Internal error:
'file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart':
Failed assertion: line 3339 pos 12: 'mixinApplication.supertype == null' is not
true.
#0 ClassResolverVisitor.doApplyMixinTo
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:3339:12)
#1 ClassResolverVisitor.visitNamedMixinApplication
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:3295:19)
#2 NamedMixinApplication.accept
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/tree/nodes.dart:283:64)
#3 CommonResolverVisitor.visit
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:1269:60)
#4 ResolverTask.resolveClassInternal.<anonymous closure>.<anonymous
closure>
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:551:22)
#5 CompilerTask.measure
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:1282:37)
#6 ResolverTask.resolveClassInternal.<anonymous closure>
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:543:57)
#7 Compiler.withCurrentElement
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:364:15)
#8 Compiler.withCurrentElement
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:385:7)
#9 ResolverTask.resolveClassInternal
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:543:34)
#10 ResolverTask.resolveClass
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:524:25)
#11 BaseClassElementX.ensureResolved
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/elements/modelx.dart:1574:37)
#12 ConstructorResolver.finishConstructorReference
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:3955:25)
#13 ConstructorResolver.visitNewExpression
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:3943:38)
#14 NewExpression.accept
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/tree/nodes.dart:470:56)
#15 ResolverVisitor.resolveConstructor
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:2675:23)
#16 ResolverVisitor.visitNewExpression
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:2601:53)
#17 NewExpression.accept
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/tree/nodes.dart:470:56)
#18 CommonResolverVisitor.visit
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:1269:60)
#19 ResolverVisitor.visitExpressionStatement
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:1954:10)
#20 ExpressionStatement.accept
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/tree/nodes.dart:1010:62)
#21 CommonResolverVisitor.visit
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:1269:60)
#22 ResolverVisitor.visitNodeList
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:2478:12)
#23 NodeList.accept
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/tree/nodes.dart:510:51)
#24 CommonResolverVisitor.visit
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:1269:60)
#25 ResolverVisitor.visitIn
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:1921:28)
#26 ResolverVisitor.visitBlock
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:1941:12)
#27 Block.accept
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/tree/nodes.dart:554:48)
#28 CommonResolverVisitor.visit
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:1269:60)
#29 ResolverTask.visitBody
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:414:20)
#30 ResolverTask.resolveMethodElement.<anonymous closure>.<anonymous
closure>
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:381:18)
#31 Compiler.withCurrentElement
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:364:15)
#32 Compiler.withCurrentElement
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:385:7)
#33 ResolverTask.resolveMethodElement.<anonymous closure>
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:352:41)
#34 Compiler.withCurrentElement
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:364:15)
#35 Compiler.withCurrentElement
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:385:7)
#36 ResolverTask.resolveMethodElement
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:339:39)
#37 ResolverTask.resolve.<anonymous closure>
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:166:36)
#38 CompilerTask.measure
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:1282:37)
#39 ResolverTask.resolve
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:154:19)
#40 Compiler.analyzeElement
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:1003:32)
#41 Compiler.analyze
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:1028:28)
#42 ResolutionWorkItem.run
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:50:38)
#43 Compiler.processQueue.<anonymous closure>.<anonymous closure>
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:936:54)
#44 Compiler.withCurrentElement
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:364:15)
#45 Compiler.withCurrentElement
(file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:385:7)
Message was sent while issue was closed.
Addressed in: https://codereview.chromium.org/16451014/ On 2013/06/12 10:26:58, ngeoffray wrote: > On 2013/06/11 13:47:45, ahe wrote: > > Committed patchset #1 manually as r23852 (presubmit successful). > > FYI, this is breaking host-checked mode when using mixins: > > FAILED: dart2js-d8-checked release_ia32 language/mixin_cyclic_test/01 > Expected: pass > Actual: crash > Compile-time error expected. > CommandOutput[0]: > > stdout: > out/ReleaseIA32/generated_tests/language/mixin_cyclic_test_01.dart:14:21: C2 > creates a cycle in the class hierarchy > typedef C2 = S with C2; /// 01: compile-time error > ^^ > out/ReleaseIA32/generated_tests/language/mixin_cyclic_test_01.dart:14:1: Error: > The compiler crashed when compiling this element. > typedef C2 = S with C2; /// 01: compile-time error > ^^^^^^^ > The compiler is broken. > > When compiling the above element, the compiler crashed. It is not > possible to tell if this is caused by a problem in your program or > not. Regardless, the compiler should not crash. > > The Dart team would greatly appreciate if you would take a moment to > report this problem at http://dartbug.com/new. > > Please include the following information: > > * the name and version of your operating system, > > * the Dart SDK build number (build number could not be determined), and > > * the entire message you see here (including the full stack trace > below as well as the source location above). > > Internal error: > 'file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart': > Failed assertion: line 3339 pos 12: 'mixinApplication.supertype == null' is not > true. > #0 ClassResolverVisitor.doApplyMixinTo > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:3339:12) > #1 ClassResolverVisitor.visitNamedMixinApplication > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:3295:19) > #2 NamedMixinApplication.accept > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/tree/nodes.dart:283:64) > #3 CommonResolverVisitor.visit > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:1269:60) > #4 ResolverTask.resolveClassInternal.<anonymous closure>.<anonymous > closure> > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:551:22) > #5 CompilerTask.measure > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:1282:37) > #6 ResolverTask.resolveClassInternal.<anonymous closure> > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:543:57) > #7 Compiler.withCurrentElement > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:364:15) > #8 Compiler.withCurrentElement > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:385:7) > #9 ResolverTask.resolveClassInternal > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:543:34) > #10 ResolverTask.resolveClass > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:524:25) > #11 BaseClassElementX.ensureResolved > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/elements/modelx.dart:1574:37) > #12 ConstructorResolver.finishConstructorReference > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:3955:25) > #13 ConstructorResolver.visitNewExpression > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:3943:38) > #14 NewExpression.accept > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/tree/nodes.dart:470:56) > #15 ResolverVisitor.resolveConstructor > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:2675:23) > #16 ResolverVisitor.visitNewExpression > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:2601:53) > #17 NewExpression.accept > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/tree/nodes.dart:470:56) > #18 CommonResolverVisitor.visit > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:1269:60) > #19 ResolverVisitor.visitExpressionStatement > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:1954:10) > #20 ExpressionStatement.accept > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/tree/nodes.dart:1010:62) > #21 CommonResolverVisitor.visit > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:1269:60) > #22 ResolverVisitor.visitNodeList > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:2478:12) > #23 NodeList.accept > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/tree/nodes.dart:510:51) > #24 CommonResolverVisitor.visit > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:1269:60) > #25 ResolverVisitor.visitIn > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:1921:28) > #26 ResolverVisitor.visitBlock > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:1941:12) > #27 Block.accept > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/tree/nodes.dart:554:48) > #28 CommonResolverVisitor.visit > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:1269:60) > #29 ResolverTask.visitBody > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:414:20) > #30 ResolverTask.resolveMethodElement.<anonymous closure>.<anonymous > closure> > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:381:18) > #31 Compiler.withCurrentElement > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:364:15) > #32 Compiler.withCurrentElement > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:385:7) > #33 ResolverTask.resolveMethodElement.<anonymous closure> > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:352:41) > #34 Compiler.withCurrentElement > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:364:15) > #35 Compiler.withCurrentElement > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:385:7) > #36 ResolverTask.resolveMethodElement > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:339:39) > #37 ResolverTask.resolve.<anonymous closure> > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:166:36) > #38 CompilerTask.measure > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:1282:37) > #39 ResolverTask.resolve > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart:154:19) > #40 Compiler.analyzeElement > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:1003:32) > #41 Compiler.analyze > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:1028:28) > #42 ResolutionWorkItem.run > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:50:38) > #43 Compiler.processQueue.<anonymous closure>.<anonymous closure> > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:936:54) > #44 Compiler.withCurrentElement > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:364:15) > #45 Compiler.withCurrentElement > (file:///usr/local/google/home/ngeoffray/projects/dart6/dart/sdk/lib/_internal/compiler/implementation/compiler.dart:385:7) |
|||||||||||||||||||||||||||||||||||||||||||||||||||
