Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pull #2

Merged
merged 18 commits into from
Feb 14, 2013
Merged

pull #2

merged 18 commits into from
Feb 14, 2013

Conversation

rushabh
Copy link
Owner

@rushabh rushabh commented Feb 14, 2013

No description provided.

vy and others added 18 commits February 6, 2013 19:08
Fix broken wildcard expansion in the `sys.process` docs.
…e when a key is not found

Current implementation of apply0 relies on tail method to iterate over all keys.
When the list gets to its end, tail produces an 'empty map' message in its exception, which is thrown by ListMap.
This change checks if the collection is empty before calling tail and provides a more appropriate key not found message.

Signed-off-by: Vinicius Miana <[email protected]>
When deserializing Unit, it would return an instance of Object, but not a Scala Unit.
By adding readResolve, the deserialization of Unit will work.
The prefix in the ImplicitInfo must be com.acme.`package`.type,
rather than com.acme.
Seems like the ifs and elses didn't quite survive e830a7c.

Before:

    ./test/partest --show-log test/files/run/foo.scala
    Testing individual files
    testing: [...]/files/run/foo.scala                                    [FAILED]

Now:

    ./test/partest --show-log test/files/run/foo.scala
    Testing individual files
    testing: [...]/files/run/foo.scala                                    [FAILED]
    foo.scala:1: error: expected class or object definition
    askdfjskl
    ^
    one error found
    1 of 1 tests failed (elapsed time: 00:00:01)
Recently, TreeCheckers (-Ycheck) was extended to
report on references to symbols that were not in
scope, which is often a sign that some substitution
or ownership changes have been omitted.

But, accessor methods directly use the type of the
underlying field, without cloning symbols defined
in that type, such as quantified types in existentials,
at the new owner.

My attempt to change this broke pos/existentials.scala.

Instead, I'll just look the other way in TreeCheckers.
`deadCode.expr` stores the method symbol most recently encountered
in `handleMonomorphicCall`, and uses this to avoid warnings
for arguments to label jumps and `Object#synchronized` (which
sneakily acts by-name without advertising the fact in its type.)

But this scheme was insufficient if the argument itself contains
another method call, such as `matchEnd(throw e(""))`.

This commit changes the single slot to a stack, and also
grants exemption to `LabelDef` trees. They were incorrectly
flagged in the enclosed test case after I made the the first change.
SI-6158 Restore compile error output under partest --show-log
Tag materialization notices enabled with -Xlog-implicits are now echoes
not printlns. Therefore, they go into stderr, not stdout, getting logged
by partest and not spamming stdout of partest.
SI-6370 changed ListMap apply0 method to produce correct error message
SI-6935 Added readResolve in BoxedUnit
SI-6225 Fix import of inherited package object implicits
Tolerate symbol sharing between accessor/field.
SI-6514 Avoid spurious dead code warnings
Conflicts:
	src/compiler/scala/tools/nsc/typechecker/Implicits.scala
Update src/library/scala/sys/process/package.scala
rushabh added a commit that referenced this pull request Feb 14, 2013
@rushabh rushabh merged commit affdbe2 into rushabh:master Feb 14, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants