diff options
author | Martin Odersky <odersky@gmail.com> | 2015-11-22 17:47:57 +0100 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2015-11-22 18:03:17 +0100 |
commit | e7fdb416006cfa4091b90935c74b5602adb5f68e (patch) | |
tree | 1070807d8eb3d3b37cc6047f5362543557bbfec8 /src/dotty/tools/dotc/typer/Inferencing.scala | |
parent | dce7053f3a6b859733253edcc82ad42b6ea3ed73 (diff) | |
download | dotty-e7fdb416006cfa4091b90935c74b5602adb5f68e.tar.gz dotty-e7fdb416006cfa4091b90935c74b5602adb5f68e.tar.bz2 dotty-e7fdb416006cfa4091b90935c74b5602adb5f68e.zip |
Swap order of arguments in annotations
The fact that the annotation comes first is weird, because when I write
an annotated type it's <type> @<annotation>. Also, annotated types
are like RefinedTypes in that they derive from a parent type. And in
RefinedTypes the parent comes first.
So swapping the arguments improves consistency.
Diffstat (limited to 'src/dotty/tools/dotc/typer/Inferencing.scala')
-rw-r--r-- | src/dotty/tools/dotc/typer/Inferencing.scala | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/dotty/tools/dotc/typer/Inferencing.scala b/src/dotty/tools/dotc/typer/Inferencing.scala index ac4ad1b35..1e8dcf4b2 100644 --- a/src/dotty/tools/dotc/typer/Inferencing.scala +++ b/src/dotty/tools/dotc/typer/Inferencing.scala @@ -179,7 +179,7 @@ object Inferencing { /** Recursively widen and also follow type declarations and type aliases. */ def widenForMatchSelector(tp: Type)(implicit ctx: Context): Type = tp.widen match { case tp: TypeRef if !tp.symbol.isClass => widenForMatchSelector(tp.info.bounds.hi) - case tp: AnnotatedType => tp.derivedAnnotatedType(tp.annot, widenForMatchSelector(tp.tpe)) + case tp: AnnotatedType => tp.derivedAnnotatedType(widenForMatchSelector(tp.tpe), tp.annot) case tp => tp } |