| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
This brings all the files into line with the .gitattributes
settings, which should henceforth be automatically maintained
by git.
|
|
|
|
|
|
|
|
|
| |
I should not have merged this pull request yet.
I didn't notice we didn't have a full successful run of the test suite.
It looks like it breaks test/files/continuations-neg/lazy.scala and
given the pending amount of changes, I prefer to have a stable master.
This reverts commit 037d3dcbc5896864aec0f9121eeda23fcc4cd610.
|
|
|
|
|
|
|
|
|
|
| |
inside blocks.
This may save huge amount of time (Fixes SI-5862) for complicated lubs. I had to remove the a check in adapt for
the part that transforms <expr> into { <expr>; () } when the expected type is Unit. The reason is in the
code.
As a side effect, we get more warnings for pure expressions in statement positions (see the change in the test file).
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Implements SIP 16: Self-cleaning macros: http://bit.ly/wjjXTZ
Features:
* Macro defs
* Reification
* Type tags
* Manifests aliased to type tags
* Extended reflection API
* Several hundred tests
* 1111 changed files
Not yet implemented:
* Reification of refined types
* Expr.value splicing
* Named and default macro expansions
* Intricacies of interaction between macros and implicits
* Emission of debug information for macros (compliant with JSR-45)
Dedicated to Yuri Alekseyevich Gagarin
|
|
|
|
|
| |
Utilize knowledge of case class synthetic equals to rule out
some comparisons statically. Closes SI-5426.
|
|
|
|
| |
Closes SI-5175.
|
|
|
|
|
|
|
|
|
|
|
|
| |
true == new java.lang.Boolean(true) will in fact sometimes be true. Also
fixes a bug caused by this change in r23627.
- lazy val SerializableClass = getClass(sn.Serializable)
+ lazy val SerializableClass = getClass("scala.Serializable")
It used to be java.io.Serializable. Hey, let's not change the meaning of
existing symbols which are in active use. No review.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
*** Important note for busy commit log skimmers ***
Symbol method "fullName" has been trying to serve the dual role of "how
to print a symbol" and "how to find a class file." It cannot serve both
these roles simultaneously, primarily because of package objects but
other little things as well. Since in the majority of situations we want
the one which corresponds to the idealized scala world, not the grubby
bytecode, I went with that for fullName. When you require the path to a
class (e.g. you are calling Class.forName) you should use javaClassName.
package foo { package object bar { class Bippy } }
If sym is Bippy's symbol, then
sym.fullName == foo.bar.Bippy
sym.javaClassName == foo.bar.package.Bippy
*** End important note ***
There are many situations where we (until now) forewent revealing
everything we knew about a type mismatch. For instance, this isn't very
helpful of scalac (at least in those more common cases where you didn't
define type X on the previous repl line.)
scala> type X = Int
defined type alias X
scala> def f(x: X): Byte = x
<console>:8: error: type mismatch;
found : X
required: Byte
def f(x: X): Byte = x
^
Now it says:
found : X
(which expands to) Int
required: Byte
def f(x: X): Byte = x
^
In addition I rearchitected a number of methods involving:
- finding a symbol's owner
- calculating a symbol's name
- determining whether to print a prefix
No review.
|
|
|
|
|
|
| |
Figured out how to turn it on by default, even.
Closes SI-4979, no review.
|
|
|
|
|
|
|
|
|
|
| |
warnings. Fixed some bugs revealed by said warnings, and made some minor
changes to avoid warnings. (Technically it's not a bug to have unrelated
classes compare as equal, but it so often is a bug that it behooves us
not to do it intentionally so the warnings stand out.) Disabled the most
useful warning for the moment since it'd be wrong with some frequency.
No review.
|
|
|
|
|
|
|
| |
Found several minor thigns wrong with checkSensible, which tries to
issue warnings for comparisons which will always be true or false. No
review.
|
|
|
|
|
|
|
|
| |
gives fewer insensible warnings about actually sensible things, etc.
Large test case with 30 warnings elicited.
Closes #282 (again), no review.
|
|
|
|
|
|
| |
Updated remaining test case to reflect the slightly differing semantics
of the Ordering fix.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
suppress "scala." prefix in string representation of types (in error
messages,..)
|
| |
|
| |
|
| |
|
| |
|
|
(2) added print/read methods to Predef
(3) added warnings for non-sensical comparisons
|