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

Issue 15911008: Set the supertype to avoid loop. (Closed)

Created:
7 years, 6 months ago by ahe
Modified:
7 years, 6 months ago
CC:
reviews_dartlang.org
Visibility:
Public.

Description

Patch Set 1 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+10 lines, -9 lines) Patch
M dart/sdk/lib/_internal/compiler/implementation/resolution/members.dart View 2 chunks +4 lines, -5 lines 0 comments Download
A + dart/tests/language/cyclic_class_member_test.dart View 1 chunk +6 lines, -4 lines 0 comments Download

Messages

Total messages: 6 (0 generated)
ahe
7 years, 6 months ago (2013-06-11 12:51:11 UTC) #1
Johnni Winther
lgtm
7 years, 6 months ago (2013-06-11 12:55:12 UTC) #2
karlklose
LGTM.
7 years, 6 months ago (2013-06-11 13:46:45 UTC) #3
ahe
Committed patchset #1 manually as r23852 (presubmit successful).
7 years, 6 months ago (2013-06-11 13:47:45 UTC) #4
ngeoffray
On 2013/06/11 13:47:45, ahe wrote: > Committed patchset #1 manually as r23852 (presubmit successful). FYI, ...
7 years, 6 months ago (2013-06-12 10:26:58 UTC) #5
ahe
7 years, 6 months ago (2013-06-12 13:14:05 UTC) #6
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)

Powered by Google App Engine
This is Rietveld 408576698