File tree 2 files changed +7
-2
lines changed
src/dotty/tools/dotc/core 2 files changed +7
-2
lines changed Original file line number Diff line number Diff line change @@ -378,7 +378,7 @@ object Denotations {
378
378
case info : SignedType =>
379
379
try info.signature
380
380
catch { // !!! DEBUG
381
- case ex : MatchError =>
381
+ case ex : Throwable =>
382
382
println(s " cannot take signature of ${info.show}" )
383
383
throw ex
384
384
}
Original file line number Diff line number Diff line change @@ -321,9 +321,14 @@ object SymDenotations {
321
321
final def isAnonymousClass (implicit ctx : Context ): Boolean =
322
322
initial.asSymDenotation.name startsWith tpnme.ANON_CLASS
323
323
324
+ /** Is this symbol a class representing a refinement? These classes
325
+ * are used only temporarily in Typer and Unpickler as an intermediate
326
+ * step for creating Refinement types.
327
+ */
324
328
final def isRefinementClass (implicit ctx : Context ): Boolean =
325
329
name.decode == tpnme.REFINE_CLASS
326
330
331
+ /** is this symbol a trait representing a type lambda? */
327
332
final def isLambdaTrait (implicit ctx : Context ): Boolean =
328
333
isClass && name.startsWith(tpnme.LambdaPrefix )
329
334
@@ -702,7 +707,7 @@ object SymDenotations {
702
707
703
708
/** All symbols overriden by this denotation. */
704
709
final def allOverriddenSymbols (implicit ctx : Context ): Iterator [Symbol ] =
705
- if (exists)
710
+ if (exists && owner.isClass )
706
711
owner.info.baseClasses.tail.iterator map overriddenSymbol filter (_.exists)
707
712
else
708
713
Iterator .empty
You can’t perform that action at this time.
0 commit comments