Scala 2.10.0 RC1 | The Scala Programming Language

25 min read Original article ↗
SI-6511  e49ece4fb1  Diagram tweaking SI-6501  e3a2d0bc4b  SI-6501 Scaladoc will correctly link to @templated SI-6499  ee7f1e8a82  Fix for SI-6499, regression in type inference. SI-6099  bc25fc53ad  SI-6099 - Scaladoc for scala.concurrent incomplete SI-6505  19ea47b342  Fixed SI-6505. Respond to ask calls by immediate failure even after compiler shutdown. SI-6458  4c7127d9ac  Deprecated instrumentation API SI-6440, SI-6440  7a6905dc15  SI-6440: Revert change to `TraversableLike.filterNot SI-6490, SI-6490  bf0e26c045  Proposed fix for SI-6490. SI-6485  0bf9daaac7  SI-6485 stops creating extmethods for macros SI-6483  1b2ac4e618  SI-6483 Prohibit super[T] references in value classes. SI-6170, SI-6471  4e7ed113cf  SI-6471 Update jquery from 1.4.2 to 1.8.2 SI-6451, SI-6451  2b4775ba7e  SI-6451: Rename classes in `unchecked-abstract.scala` test. SI-5582, SI-6408, SI-6408, SI-6432  5d9cde105e  Put more implementation restrictions on value classes. SI-6408  ea9e4ec55e  Fixed problem in SI-6408 SI-6436  0720157cd7  SI-6436 Handle ambiguous string processors SI-6215  d46f2d519d  SI-6215 Fix compiler crash on private method in value class SI-6311  6ea54efa60  Test case for SI-6311. SI-4881  18fd93b5ec  Revert "SI-4881 infer variance from formals, then result" SI-6442  b2211a76a6  SI-6442 - Add ActorDSL object for actor migration kit SI-6417  a6b81ac12a  SI-6417 correctly reifies non-value types SI-6412, SI-6412  8c7d94ef9e  SI-6412 alleviates leaks in toolboxes, attempt #2 SI-6277  2fb507b849  SI-6277 fixes flags, annotations & privateWithin SI-6429  53cd235eac  Don't call `updateInfo` during typing. SI-6275, SI-5762  9d423c9bb7  Improvements to unchecked warnings. SI-6344  4fb4287bfe  Update check-file for SI-6344 test. SI-6409  0263e72504  Improves SI-6409 - Add note to string flatMap about evaluation. SI-6412  bb48b7a452  Revert "SI-6412 alleviates leaks in toolboxes" SI-6412, SI-6412  b403c1d752  SI-6412 alleviates leaks in toolboxes SI-6412, SI-6412  291d1f033a  SI-6412 fixes leaks in Types.uniques SI-1329, SI-5918, SI-5918  3c8a98f7d5  SI-5918 fixes the ConstantType ugliness SI-6380  990b3c7682  SI-6380 #1 Add @throws[Exception] SI-6337, SI-6337  c7204787b4  New test case for SI-6337 SI-6260, SI-6385, SI-6385  d435f72e5f  New test case for closing SI-6385 SI-6260  96408154f4  Fixes SI-6260 SI-6393, SI-5943  440d28d027  SI-5943 toolboxes now autoimport Predef and scala SI-6344  a0c7acd7c3  Fix for SI-6344, value class generic signatures. SI-6363  3fa900ca0e  SI-6363 removes scala.reflect.base SI-6392  b8362d6aa4  SI-6392 wraps non-terms before typecheck/eval SI-6394  648dae6a50  SI-6394 fixes macros.Context.enclosingClass SI-6336  beb08c206b  Error message improvement for SI-6336. SI-6390  3c542251e0  SI-6390 removes Trees#ArrayValue from the API SI-6354  08e5fd23e7  Fixes SI-6354: improved error messages for Dynamic signature mismatches. SI-5822  d7acf92be6  Adds OSGi support / tests to Scala. Fixes SI-5822. SI-6305  c6dde6a1e8  Fixes SI-6305 scala.tools.nsc.io split between jars. SI-6336, SI-6336  8c69f4da33  SI-6336 Now also catches return types SI-5418, SI-5418  862a1ede4d  test case closes SI-5418 SI-6389  c555ff56db  enable integer multiplication/divison on FiniteDuration, see SI-6389 SI-5692  3881ab3831  SI-5692 better error message SI-5942  5e6d069b00  SI-5942 toolboxes now reset front ends SI-6287  1e3012d554  SI-6287 fixes synthetic symbol clashes in toolbox SI-6189  6b9e1a0747  Revert "Fixes SI-6189." SI-6236  6854842cf8  Revert "Fixes SI-6236." SI-4581  4ed7a60caf  Revert "Fix SI-4581." SI-6294  10c9cf05b4  Revert "Fix SI-6294." SI-6337  c30a9bddc4  Fixes SI-6337 by disallowing nested value classes. SI-6374  1b8330c510  SI-6374 Reflection now works for anns with enum fields SI-6374, SI-6374  564ea863e6  SI-6374 Scala reflection now supports Java CRTP SI-6353  dbe7ef94dd  Fixed SI-6353: applyDynamic with sugared applications SI-6336  344215b92d  SI-6336 Disallows value types in structuralal refinements SI-6356  cf819b7756  SI-6356 reflection now supports Java annotations SI-6356  39486b03e1  SI-6356 reflection now supports Java annotations SI-6362, SI-5924  e6176afdcd  SI-6362 & SI-5924 removes caches in the macro API SI-6342  ba3a9e05a6  SI-6342 cleans up toolbox API SI-6360  4767fc21c6  SI-6360 revises naming of AnnotationInfo and its members SI-6372  210f8c8f10  SI-6372 cleans up the API of Attachments SI-6371  ed913c2963  SI-6371 adds comments for Trees#UnApply SI-6369  dd7fa89903  SI-6369 removes Type.narrow from the API SI-6365  2cc70c55af  SI-6365 removes Symbol.hasAnnotation from the API SI-6373  db306cb526  SI-6373 removes Trees#ApplyDynamic from the API SI-4813  f3fd018f14  Fix SI-4813 - Clone doesn't work on LinkedList. SI-6310  b2864f8bf3  SI-6310 redeploys the starr SI-6323, SI-6310  f4a722d205  SI-6310 AbsTypeTag => WeakTypeTag SI-6323  524c90d09f  SI-6323 outlaws free types from TypeTag SI-6323  0eabb63c06  SI-6323 prohibits reflection against free types SI-5882, SI-6359  41dfb16121  SI-6359 Deep prohibition of templates in value class SI-2296, SI-6245, SI-2296  e498fac7fd  Fix for SI-6245 with workaround for SI-2296. SI-2453, SI-6259  7861ed6886  Fixes SI-6259. Unable to use typeOf in super call of top-level object. SI-6367  6fbb4ac42a  Fix for SI-6367, exponential time in inference. SI-6306, SI-6306, SI-6306, SI-6306  9568dc9d1a  SI-6306 Remove incorrect eta-expansion optimization in Uncurry SI-6268  fdcda3313d  Fixes SI-6268. Review by @paulp and @lrytz. SI-6276  1776337253  Avoid spurious warning for `def foo = x.foo`. SI-6162  e3b0c7abbf  SI-6162 Adds @deprecatedInheritance/@deprecatedOverriding SI-6278  ed723738e6  SI-6278 fixed: synthetic implicit def must sort with its associated implicit class SI-6335  b43b3b0ba8  SI-6335 More precise location of the implicit class synthetic method. SI-6331  815f60ff9c  Refine equality of Constant types over floating point values. SI-6331  c619f94a9c  SI-6331 Avoid typing an If tree with a constant type. SI-6333  4831ef51a7  Fix for SI-6333 - Try throws from combinators. SI-6318  6a740332c7  SI-6318 fixes ClassTag.unapply for primitives SI-6246  d27dc71d67  SI-6246 deprecated apis for core class tags SI-6271  93d3cc7038  Fixes SI-6271 - Missing isEmpty override for views. SI-6274  ec39e1ca82  SI-6274 Fix owners when eta-expanding function with byName param SI-6273  ce048745e1  Fix for SI-6273, repl string interpolation. SI-6263  6cda8a6f97  Fix for SI-6263, futile adaptation. SI-4270  445c2f85e1  More useful -Xlog-implicits output. SI-6034  34893e5d77  Fix for SI-6034, covariant value classes. SI-6227  35dbc88841  Closes SI-6227 SI-6283  3cff2587d7  Fix for SI-6283, no abstract value classes. SI-6293  f888b8572e  hotfix for SI-6293 SI-4581  373f22a202  Fix SI-4581. SI-5767  3cd8eb053a  SI-5767 fix + small HashSet/HashMap fixes SI-6190  da9fe44775  Add missing tests for SI-6190 SI-6281  5bdfddefd7  SI-6281 macroArgs for defs with implicit args SI-6280  51b7be2fef  SI-6280 Scaladoc: Reloading preserves anchors SI-3577, SI-6258  d614ae6e76  SI-6258 Reject partial funs with undefined param types SI-6170, SI-6170  1be1f76012  SI-6170 Revert #515151 "Upgrade jQuery from 1.4.2 to 1.7.2" SI-1987  fcf2b29010  Improved fix for SI-1987, overloading in package objects. SI-6264  1c6543dc7d  Fix for SI-6264, crash in checkCheckable. SI-5788  c17c95ca3f  SI-5788 correct test and symbol update SI-6220  94888cf69b  Added test that should cover all code paths of the changes done in SI-6220 SI-6236  faa114e2fb  Fixes SI-6236. SI-6189  5a8dfad583  Fixes SI-6189. SI-6234  41bf9c3c35  Fixes backend crash due to incorrect consumedTypes SI-6167  7281be9599  SI-6167 Override SeqLike#isEmpty for better performance SI-6223  97ae6f6f72  Move side-effecting call out of debuglog(). Fixes SI-6223. SI-5940, SI-5940  64138082a4  SI-5940 impls are no longer in macro def pickles SI-6214  21fcf64c81  Fixes SI-6214. SI-6198  cef4726232  Added test for SI-6198 SI-6201  8d87387e6a  SI-6201 minor fixes in key points SI-6022  9108b2506c  SI-6022 cleaner model of variable equality modulo <: SI-6022  e232a614dd  SI-6022 refactor to clean up model of variable equality modulo <: SI-6184  d97f7d9543  SI-6184 don't introduce dummies in checkableType SI-6204, SI-6204  4ced74a5ee  SI-6204 reifier no longer causes cyclic errors SI-5756  2ba6774766  SI-5756 correctly reifies local module classes SI-5314  75e36233a0  SI-5314 - CPS transform of return statement fails SI-5687  95b3648982  Fixes SI-5687. SI-5158, SI-6070, SI-5739  8ebe8e3e88  SI-5739 (bis) vals for subpatterns unless -optimize SI-4023, SI-5947  81535ce5b9  SI-5947 works around getDeclaredClasses SI-6040  f76306b77f  SI-6040 error on unauthorized extension Dynamic SI-5933  8aebc6c805  SI-5933 do the new patmat translation for scaladoc SI-6186  788478d3ab  SI-6186 TypeTags no longer supported in macros SI-5498  e8f1a423d1  SI-5498 completes ModuleMirror.instance SI-6183  383fd5c137  SI-6183 don't crash on type error in outer test SI-6145, SI-6145, SI-6145  9d330e3c83  SI-6145 lax typing of args to synthetic case-labels SI-6199  cac52ac3e3  SI-6199 unit-returning methods now return unit SI-4945  963aabbeb4  Fix for SI-4945, repl hang on -i input. SI-6181  3c4f4865f6  SI-6181 method mirrors now support by-name args SI-6179  3aa221e28c  SI-6179 mirrors now work with value classes SI-6178  432d7b86cb  SI-6178 reflective invocation of magic symbols SI-6063  b65b7b1392  Fix for SI-6063, broken static forwarders. SI-5788, SI-5788  f492d0aaaa  SI-5788 Tailcalls LabelDefs correctly duplicated SI-6188  cb6066ee61  Temporarily skips failing test due to optimizer bug SI-6188 SI-6185  5b82a9702d  SI-6185 - add "prepare" hook to ExecutionContext SI-6074  816c291006  SI-6074 SI-6175  ce4bcb5362  SI-6175 reflect over classes with symbolic names SI-6172  d1a95c8789  Fixes SI-6172. SI-5919, SI-5908  a354ec2a77  first stab at serialization of exprs and tags SI-5888  b578059b43  SI-5888 Mirrors now have sane toStrings SI-5736  7112c66d69  navigation between fields and accessors SI-5732, SI-5732  a727c6fc19  SI-5732 members and derivatives now return Scope SI-5751  ddcba10984  SI-5751 cleans up toolboxes for the release SI-6084  991b50f3f4  Fix for SI-6084, type alias crasher. SI-5764  6d088252ba  SI-5764 Honor -language:_ SI-5866  5589eeeb9a  SI-5866 Support casting null to value classes SI-5031  2a14dd2d23  Fixed SI-5031. Only consider classes when looking for companion class. sym.effectiveOwner revealed this piece of inconsistency. companionModule is fine because similar check is there already. SI-5799  aad84ecba3  SI-5799 Secondary constructors in value classes not allowed SI-5878  daf0953c1f  Closes SI-5878 SI-5882  95d5323583  Closes SI-5882 SI-6146  a4bb3b679a  Changed isHidden condition back to isSynthetic. SI-5958  ae28472bc7  SI-5958 This deserves a stable type SI-6140  fa09fad51f  SI-6140 Scaladoc infinite recursion in wiki parser SI-4601, SI-4560  cf709c2dd2  SI-4560 - improved test SI-4601, SI-4560  6eb55d4b7a  Fix SI-4560, NoSuchMethodErrors involving self types. SI-6112  e6f3a8f6d3  SI-6112 exposes symbol mutators in macro universe SI-6075  2926dfc526  SI-6075 cleans up api.StandardNames SI-6058  2eff6601da  SI-6058 makes JavaMirror caches weak SI-5897  115eede127  SI-5897 don't check sensicality in match SI-2038  e6912050bf  SI-2038 make pt fully-defined when typing Typed SI-6111  ee5721e864  SI-6111 accept single-subpattern unapply pattern SI-4440  ee93df064b  SI-4440 workaround: avoid outer accessor that'll vanish SI-4881  5c5e8d4dcd  SI-4881 infer variance from formals, then result SI-6089  1413713bdd  SI-6089 test file for pt2 SI-6117  9fecdfd8cb  Fix SI-6117, regression involving import ambiguity. SI-6090  d0623dc766  SI-6090 SI-6089, SI-6089  71d20312e9  SI-6089 pt2: _ is tailpos in `_ || _` and `_ && _ SI-1832, SI-1832  6015a54812  SI-1832 consistent symbols in casedef's pattern&body SI-5999  b5f721fb52  SI-5999 a real fix to the packageless problem SI-6031  93519ab504  SI-6031 customizable budget for patmat analyses SI-5999  96036b3569  SI-5999 removes the macro context mirror SI-5999  602a6c55d7  SI-5999 deploys a new starr SI-5999  30f5a36941  SI-5999 removes Context.reify SI-5984  911bbc4fdd  SI-5984 improves error reporting in JavaMirrors SI-4897  4fc9cdb64f  SI-4897 derive expected value from single type SI-5957, SI-6109  ee0d01785e  Deprecate all JVM 1.5 targets and make 1.6 default. SI-5784  6539a9ddc5  SI-5784 Scaladoc: Type templates SI-3791  4324282f27  Removes Float.Epsilon and Double.Epsilon SI-5939  4f3c92e0f8  SI-5939 resident compilation of sources in empty package SI-6104  86f7bc35e5  SI-6104 support This pattern SI-6092  01be1b1c20  Fixed SI-6092. Fixed leaky annotations, and relaxed the conditions under which a try-catch is lifted out to an inner method. SI-6089  fa1dc5afea  SI-6089 better tail position analysis for matches SI-5695  38aaa3a24a  SI-5695 removes Context.enclosingApplication SI-5892, SI-5892  776105a43e  SI-5892 allow implicit views in annotation args SI-6095, SI-6098  1c2efb36c2  SI-6095, SI-6098 - clean up public API, add deprecations SI-5158, SI-6070, SI-6070, SI-4425, SI-5739  aa6fa4623b  SI-5739 store sub-patterns in local vals SI-5731  06b373878a  SI-5731 a few fixes for value classes SI-5588  ed9669f57a  Fixes SI-5588. Correct compare for Enumeration. Slower than the original one but does comparison in the same spirit as IntOrdering. SI-5856, SI-5856  9c4b0d0402  SI-5856 enables use of $this in string interpolation SI-5895  bab827a542  SI-5895 fixes FieldMirrors SI-6076  72de4d8349  Fixed SI-6076. Range positions for macro-based string interpolation. Should bring back the jenkins job as well. SI-5784  dac4e8f543  SI-5784 Scaladoc: {Abstract,Alias} type templates SI-6047  ea47260be5  test case closes SI-6047 SI-5385  32fd97df41  Fix for SI-5385. SI-6086  9117cbee27  SI-6086 magic symbols strike back SI-5784  17f745d33c  Scaladoc: Refactoring the entities SI-3695, SI-4224, SI-4497, SI-5079  dc70d1b7bd  SI-3695 SI-4224 SI-4497 SI-5079 scaladoc links SI-4887  929415a3f4  SI-4887 Link existentials in scaladoc SI-4360  a119ad1ae5  SI-4360 Adds prefixes to scaladoc SI-3448, SI-3448  891769fae5  Scaladoc: workaround for untypical Map usecases SI-4324  8779ade6f5  SI-4324 Scaladoc case class argument currying SI-5558  242c2fc947  SI-5558 Package object members indexing SI-5965  8291106ec9  SI-5965 Scaladoc crash SI-3314  f881249ba1  Scaladoc: Inherited templates in diagrams SI-3314, SI-4888  f916434c11  SI-3314 SI-4888 Scaladoc: Relative type prefixes SI-5235  fcbdc1725c  SI-5235 Correct usecase variable expansion SI-6035  7c42b5aa4d  SI-6035: Specialization and separate compilation. SI-5830, SI-6048, SI-6011  ef2bf41142  SI-6011 switches: unreachability, guard-free form SI-6028  a3bf34563d  SI-6028 Avoid needless symbol renaming in lambdalift. SI-6028  32dc7e8069  A test case that scrutinises lambdalifter's output. SI-4365  93751072ef  With -Yno-generic-signatures, exit GenASM.getGenericSignature early SI-4691, SI-6077  4276f61551  SI-6077 more conservative TreeMakersToConds for CSE SI-5956  2c5890b3a7  SI-5956 trigger copy generation with correct namer SI-5957  21f14e371c  SI-5957 enable direct parsing of nested java class classfile SI-6061  4aeaf9015b  SI-6061 adds weakly conformance for number types to resolveOverloaded SI-6022, SI-6022  d852c9b8b4  SI-6022 model type-test-implication better SI-6042  da587e3178  SI-6042 Improve type selection from volatile type error SI-3836  ddcb351a2e  Fix SI-3836 not-really-ambiguous import detection. SI-6008  b61b5fffb6  SI-6008 use static knowledge of success of type tests SI-4691  8234ba3905  SI-4691 exhaustivity: `unapply: Some` = irrefutable SI-5907, SI-5009  6c7f2b6460  SI-5907, SI-5009 case-class copy defaults only for first param list SI-5975  7050335529  Allow attachments for symbols, just like for trees. SI-5975  4b6ae392a7  Enhanced presentation compiler test infrastructure SI-5959, SI-5959  0529dd502a  SI-5959 type equality now accounts for mirrors SI-6013  1a2ec87c09  SI-6013 Disallow deferred members from intermediate java parents. SI-5969  12b72485d8  Closes SI-5969. SI-5780  c410b57d55  Diagram tweaks #2 SI-5212  c85b4a4956  Scaladoc class diagrams part 2 SI-6007  96dd73146f  reify no longer dealiases symbols and types SI-5929  59300ee6e3  Fix SI-5929 - Verify error with finally and pattern match SI-5489  ad51d82953  SI-5489 Avoid accidentally adding members to Object in erasure. SI-5932  8f640e8a1d  SI-5932 Tone down non-sensible == warning with refinements. SI-5967, SI-4176  d9d5dcd1e2  SI-4176 A repeat dose of repeated parameter type sanitization. SI-3326  5362f3df48  Fix SI-3326. SI-5986  788ac75021  Fix SI-5986. SI-5971  ba542ba608  Fix SI-5971. SI-5148  175d8714e3  Closes SI-5148. SI-2796  ac71812170  SI-2796 Warn if early definitions are used with a trait. SI-5189  552ee9cc54  better fix for SI-5189 pt1 SI-5968  c27e5f0d60  SI-5968 Eliminate spurious exhaustiveness warning with singleton types. SI-5610, SI-5966  4736897ad2  SI-5966 Fix eta expansion for repeated parameters with zero arguments. SI-5284  b29c01b710  Fix SI-5284. SI-2807  7d8527b40a  SI-2807 Resurrect and refine the promiscuous catch warning. SI-5951  a2d1b23dbe  adds `narrow` to the reflection API SI-5953  47fad25adb  Fix for SI-5953, extension methods crasher. SI-4541  a83586a481  Fix SI-4541. SI-4954  da7235afe8  Fix SI-4954. SI-4842  6aa5762fa0  SI-4842 Forbid access to in-construction this in self-constructor args SI-4989  72ee06de4c  SI-4989 Reject super.x if an intermediate class declares x abstract. SI-5617  2d3b6bd321  SI-5617 Better error message for "x overrides nothing". SI-5910  5a8b937510  Fix for java parser edge case. SI-5212  fba4098ca5  Scaladoc class diagrams part 2 SI-4270  d3393306e3  SI-4270 Refactor for efficiency and clarity. SI-5162, SI-4283  6177066441  SI-5162 Exclude super.foo from the erasure cast of SI-4283 SI-5696  fc6ea96f19  SI-5696 Detect excess constructor argument lists. SI-4270  9129cfe911  SI-4270 Disqualify in scope implicits that are shadowed. SI-4270  0dea3d5a05  SI-4270 Rename implicits to avoid name clashes. SI-5884  5acac4d806  TypeTag => AbsTypeTag, ConcreteTypeTag => TypeTag SI-4909, SI-5763  13213e3df0  Fixes SI-4909 and SI-5763 SI-5853  dab1d0361f  Fix SI-5853. SI-5880  daca24d8e7  Fix SI-5880. SI-5857  0291797fec  Fixes SI-5857. SI-5867  ef45ee4c21  Fix SI-5867. SI-5879  90cd1f9ccd  Fix SI-5879. SI-5313  82d2f0c80d  SI-5313 Revert to two traversals in substThisAndSym. SI-5862  037d3dcbc5  Don't compute least upper bounds for expressions in statement positions inside blocks. SI-5683  80d986997e  SI-5683 Fail gracefully when transposing a ragged type arg matrix. SI-5167  09bf95675b  SI-5167 An impl class method should refer to its own parameter symbols. SI-5792  ed6daea665  More robust findScalaHome in bash scripts. See SI-5792 SI-3346, SI-5845  8d4ce1da77  SI-5845 Advances the example from a crasher to an inference failure. SI-4579  f785785bd2  SI-4579 Yoke the power of lisp.scala as a stress for the optimizer. SI-5652  4794374af4  SI-5652 Mangle names of potentially public lambda lifted methods. SI-4911  e1e7a3a0b1  Test case closes SI-4911. SI-4818  64c57631ab  Test case closes SI-4818 SI-5318  510f637780  SI-5318 Make implicit divergence checking PolyType aware. SI-5821  ea78793c61  Closes SI-5821. SI-963, SI-5008, SI-4649  402b5e4a13  Pending and passing tests. SI-5779  17ed967557  SI-5779: Wrong warning message (comparing Number) SI-3761  8de2caa560  SI-3761: Overload resolution fails on by-name parameter (amended per lrytz) SI-4270, SI-2405  820897b978  SI-2405 Confer implicit privileges to renamed imports. SI-5779  e3b924e3e2  SI-5779: Wrong warning message (comparing values of types Float/Double and Number using `==' will always yield false) SI-3761  f6a4d94569  SI-3761: Overload resolution fails on by-name parameter SI-5760  01c673efd8  SI-5760: Improve error message for package$Klass conflict with Klass SI-4975  03e6d929ee  Consider method-scoped companions in the implicit scope. SI-3880  d046b9a6f2  Test case closes SI-3880. SI-3899  4613ae777e  Pending test for SI-3899. SI-5125  dbee14fba9  Improve test for SI-5125. SI-5125  076b1c4235  Fix @varargs forwarder generation in the presence of nested templates. SI-5804  f51dbd5564  Fixes SI-5804. SI-4461  093075a2f7  Fixes SI-4461. SI-4717  c1aad0e604  Further fixes SI-4717. SI-5544  9c6a7ad81b  Fix SI-5544 SI-4717  2aa685bcbf  Fixes SI-4717. SI-5803  c09bd7cbe8  A band-aid solution for SI-5803. SI-4928  3c79caa136  Fix SI-4928 SI-5259  7d79c44608  Fix SI-5259 SI-5384  2d33c00ec0  fix SI-5384 SI-4717, SI-5552  f7d5f45aa7  Specialize lazy vals (closes SI-5552) SI-5137  b19dfd8a59  Test case closes SI-5137. SI-1133  ba123f081f  Confirm extractor based pattern matches don't explode exponentially. SI-4025  3bbf6328dc  A REPL pattern matching crasher that crashes no more. SI-5029  6e2d3f01b5  Another bug bites virtpatmat's dust. SI-5407  f707141863  Test case closes SI-5407 SI-4124  3a7a92bd92  Test case closes SI-4124. SI-5165  3511e5960d  Test case closes SI-5165. SI-2764  8075672308  Recognize java enums as constants from source. SI-5626  0c5de3cf31  Fix SI-5626. SI-5009  40e7cab7a2  Fix SI-5009: case-class copy method now eta-expands over higher parameter lists. SI-4098  d35e74eb6b  Forbid forward refs from self constructor invocations. SI-4482, SI-4651, SI-3702, SI-1832, SI-3439, SI-5091, SI-5231, SI-5265  4c04213b99  Test cases. SI-5654  23afe3c9b9  Fix for SI-5654. SI-5210  09f380dbda  Fix an inference regression with this.type. SI-5777  e8e88f785d  Restored portion of code removed in a7f68ce32c . SI-5178  5d90d00108  imporved comment related to SI-5178 SI-5328  84764949e2  Fixes SI-5328. Iterator.patched failed when from=0. SI-5201  a516098d4e  Fixes SI-5201. Adds flatten to TraversableViewLike. SI-5640  58bb2d1bd2  Fix for ## inconsistency. SI-5564  d107527434  Fixes SI-5564. SI-5769  8e88e5b214  Fix for aliasing bug in reifier. SI-5629  a11a57735e  Fixes SI-5629. SI-4568  538e6dfbb5  Test case closes SI-4568. SI-750  5ca799d8c9  Test that primitive arrays aren't accepted as a Java generic array. SI-5305, SI-3614, SI-3856, SI-3614  f5df207f95  Don't hop to the first enclosing, non-silent context when typing refinements. SI-4216  a21f14defa  Don't admit primitive arrays as a generic Java varargs param. SI-5641  b5e9e4b950  Have ArrayCharSequence reuse its Array. SI-5514  37c157c91f  Fixes SI-5514. SI-963  01f6ed8e22  Fix for one of the oldest open soundness bugs. SI-5612  aad6deae72  Fix for broken non-local returns. SI-5667  5c84dc85bf  Fix for implicit class / value class collision. SI-13  bbdd570ccc  Clarified the status of SI-13. SI-5040  780bed7fbb  Fix for Dynamic interaction with private methods. SI-2337, SI-1697, SI-3705, SI-4415, SI-1357  8bc8b83f0b  Moved passing tests from pending to files. SI-3718, SI-3718  58f6a13460  Fix for SI-3718. SI-5608  453d615fb3  Fix for SI-5608, crasher with value classes. SI-5655  03e3a40951  Test case closes SI-5655. SI-5715  0cb886ae44  Removed BackquotedIdent. SI-5728  ca74659bb0  Hardening implicit classes. SI-4976  44797916bd  Fix SI-4976 partially SI-5688, SI-5703  7a5aaa9e23  SI-5703: normalize refined types more SI-5720  aabe71f989  SI-5720: Qual block doesn't update sym owner SI-5729  3e20bebd19  SI-5729: TypeVar experimentals iff -Xexperimental SI-5666  e69ee3676d  Hackaround for people who like to instantiate the uninstantiable. SI-5578  ae5ff6628b  Fixes #SI-5578. ResetAttrs shouldn't be side-effecting on the original tree, since it can lead to NPEs in erroneous trees (or maybe even for valid ones?). Review by @odersky SI-5543  77b577a5ae  SI-5543: Ctor default arg wrongly scoped (revised) SI-3755  c577aaca7a  SI-3755: catch exception thrown by adaptToNewrun SI-5702  9d925a30c7  SI-5702 Pattern parser halts on star SI-5690  efd1293df9  SI-5690: no-selector match in function yields function SI-5168  c3b0113f31  Fix a documentation comment of Product(n)#productElement SI-5083  e59cadeb9d  Scaladoc's tests should work with test/partest SI-5672  c2cd6acf99  don't emit tiny switches: optimizer chokes on them SI-5672  1a6e7129da  work around optimizer bug SI-5672 SI-5672  9998a85b4c  work around optimizer bug SI-5672 SI-5663  72d86cbe8c  SI-5663: Tweak warnings on case class equals SI-5657  90960a1384  Workaround for SI-5657. SI-5583  08505bd4ec  Workaround for SI-5583. SI-5648  00e9446bfc  Fix for SI-5648. SI-4540, SI-4540  174a75f78d  SI-4540 Fix [RichDouble|RichFloat|RichLong].isValid[Byte|Short|Char|Int]. SI-4134  72f6f0e57c  SI-4134: abstract override crasher if lacking super impl SI-5591, SI-5591  41c0b0b7b9  Fix for SI-5591. SI-5644  19bb173264  Fix for SI-5644. SI-4910  a7f68ce32c  Unify "object Foo" and "Foo.type". SI-3272  03f32bd22f  Fix for SI-3272. SI-5632  88bc33301a  Fixes SI-5632 (serialization of large HashTables) SI-4545, SI-5633  75e584bd0c  Fix for regression with inference at arity 21+. SI-3569, SI-3770  399bd6240f  Never write final fields outside of constructors. SI-4579  97f03245d9  Revived the lisp test. SI-5614  017f48e00b  String interpolation bug fix SI-5604  2b90e85b68  Workaround for "package is not a value". SI-5373  5632167f6c  Fixes SI-5373 SI-5609  4b0d4571ec  Fix .empty and add .ofDim factory method. SI-4488  1c0bef8838  Close issue #SI-4488 SI-3452  c0e9e75bec  Broke up def bridgeDefs. SI-4750  479dd13148  Document regex replacement strings behavior. SI-2460  e3dec9f006  Regex improvements SI-5599  2c58044335  Fixed SI-5599 SI-5593  72c104b8b7  Fixes SI-5593 SI-5580  5d555ef90f  Overhaul of JavaConver{sions,ters}. SI-5580  39938bcc29  Fix for SI-5580. SI-4574  fb44bb28b8  Test cases closes SI-4574. SI-5589, SI-1336  c82ecabad6  Finally did something about broken irrefutability. SI-5189  910a701fcc  SI-5189: refined GADT soundness fix SI-960  fbeceb8f38  Removed "Todo: test" where a test exists. SI-3275, SI-5455  79e937bea2  Fix for tailcall transform/recognition bugs. SI-5548, SI-5189  29bcadefb4  SI-5189 fixed: safe type infer for constr pattern SI-5189  0cffdf38d9  SI-5189 1/2: inferConstrInst uses correct variance SI-3569  02fb34822b  Fix for public final fields. SI-5545, SI-5545  c5f68c11d3  Force .info before creating new synthetic syms SI-5534  777dbd70f5  Revert attempt to limit private types in lubs. SI-2296, SI-2296  f708b87e55  Overcame trait/protected/java limitation. SI-4777  fb87f2de76  Test case closes SI-4777. SI-5537  d852612c35  Fix for corner case in type printing. SI-5406  c11ec6f532  Fix for typing of objects in patterns. SI-4893  f3711b634c  Improving error message. SI-5528  07ffa8d66d  Fix for "." appearing on classpath. SI-5523  76e9da2ca4  Added updated ForkJoinPool, w/ necessary updates to Scala Actors. SI-5215, SI-5215  a983f2b30c  Revert recent elidable commits. SI-5171  a1d8029b3d  Test for SI-5171 SI-5316  b732859147  Test for SI-5316 SI-5034  fa8ef34b9b  Removed dead code in RefChecks. SI-5358  a6a9684f5b  A better error message for inheritance conflict. SI-5215  5e52ce9a13  Fix for SI-5215: scalac crash when @elidable used in trait SI-4770  87e369ef46  More specialization tests. SI-5500  ec160bae7e  More on SI-5500. SI-5500  1df4fc6e59  Fixed over-optimistic anyrefSpecCache (closes SI-5500). SI-4770, SI-5488  1e648c3862  Fixed AnyRef specialization. SI-5005  423360f597  Added test files to verify previous commit. SI-5439  18559c4dc5  Close file descriptor leak in sys.process. SI-5452  6543b2d983  Revert "Fix for SI-5452." SI-5452  9655fafbc8  Revert "Make fix for SI-5452 not break other things." SI-5005  e4b5c002b1  Improve handling of final and @inline in specialization. SI-4740, SI-4770, SI-5267  bb23d766bc  Specialization action. SI-5464  97ec16850b  Disables typechecking that precedes reflective compilation SI-5452  a725bf982c  Make fix for SI-5452 not break other things. SI-5446  bd988df644  Fix for set/list/oops bug in MutableSettings#copy. SI-5452  2b731911e9  Fix for SI-5452. SI-5444  eb8556ca66  Fix for SI-5444. SI-5453  2fc92eb4f0  Fixes https://issues.scala-lang.org/browse/SI-5453 SI-1195, SI-1201  7a6fa80937  Another existential problem down. SI-4171, SI-1195, SI-1201  c478eb770d  Overcame long-maddening existential issue. SI-5451  41fd956d99  Fixes https://issues.scala-lang.org/browse/SI-5451 SI-5287  7ee4c018ce  Scaladoc @usecase annotation overriding / SI-5287 SI-5287  5be13bf0e0  Revert "Scaladoc @usecase annotation overriding / SI-5287" SI-5287  7946ac410a  Scaladoc @usecase annotation overriding / SI-5287 SI-5334  75696bc3d3  Fixes https://issues.scala-lang.org/browse/SI-5334 SI-5430, SI-5431, SI-5256  1e0707786b  Hardens classToType logic SI-5429  f55db64983  Fix for bad bug with accidental overrides. SI-5426  147e9eaf38  Improved warning for insensible comparisons. SI-5423  2e66407944  Introduce getAnnotations that triggers symbol completion SI-5415  4224d2a7b0  -Yshow-symkinds: prints kinds next to symbol names This very situational option proved to be very useful when debugging https://issues.scala-lang.org/browse/SI-5415 SI-5415  6a5901461c  -Yshow-symkinds: prints kinds next to symbol names SI-5374  e234978dfd  Refine fix for SI-5374 - make list deserialization backward-compatible. SI-5375  4abec1f64d  Fix for SI-5375. SI-5377  af164c5686  Update for fix for SI-5377. SI-5374  a6fcd70b60  Fix for SI-5374. SI-4767  ec3438c289  Linked up $class visibility to symbol redefinition. SI-4835, SI-4835  39a837c835  Add test case for SI-4835 (https://issues.scala-lang.org/browse/SI-4835) SI-4929  dce6b34c38  Fixes SI-4929, with a test to verify. SI-5072  5a711d7a41  A better REPL context classloader. SI-5387  beeac27cb4  Improved performance of TraversableLike.dropWhile, which now stops re-evaluating the predicate after it once evaluated to true. SI-5066  5d782f24fc  Closes SI-5066 SI-5382  8deade7d86  Avoid calculating similar strings sometimes. SI-5377, SI-5377, SI-5377  26afbf85bf  Fixed a bug SI-5377 (https://issues.scala-lang.org/browse/SI-5377). SI-4925  2820770bff  Fixing inliner visibility issue. SI-4869  066b1a1f5d  Fix for crasher in uncurry. SI-3999  d7981e784e  Fix for spurious implicit ambiguity with package objects. SI-1987  66a3623d59  Fixed overloading in package objects. SI-5371  1413890150  Improve description of flatten, flatMap SI-5370  545680b274  Explain Function1 vs PartialFunction SI-4749  2064372659  Better error reporting regarding main methods. SI-5300  af4a529929  Fix for PartialFunction NPE. SI-5343  1684baefd2  Don't hard fail over missing classfiles. SI-3758  27d19715af  Made Array manifests return type arguments. SI-5020  a6ebd0f3ee  Remedy spurious bounds conformance failure. SI-4070  f39537a369  Fix for crasher during type inference. SI-5359  cdd4aac981  Fix issue with higher-order type params. SI-5356  be46e48713  Fix for NoSuchMethod in cleanup. SI-5352  bedb33fd7c  Don't infer protected members into lub refinements. SI-5354  6975b4888d  Closes SI-5354. SI-5354  fafbffc295  Closes SI-5354. SI-5175  33ab1a574a  Tone down insensible-equality warning. SI-5317  f737e35ddf  Fixed regression in lub calculation. SI-5245  08ec6ba4e4  [vpm] optimized codegen avoids option-boxing SI-5226  82089f7909  Attempt to fix classloader issues SI-4871  bba3b00cf7  Fix for classOf NPE. SI-5053  ab07db12cc  unzip(3) on view now returns view. SI-4024  6912ff828d  Fix for seq/array varargs crasher. SI-5295  d718a7c7f3  Batch files no longer swallow exit codes SI-5266, SI-5266  a6152b4c2c  Fix reflective toolbox producing invalid bytecode SI-4627  f3e7e98cc0  Clean up standard/swing library by deprecating/moving code examples SI-4990  60b90b18d6  Migration message and version cleanup SI-5274  1f8d642eb9  Reflective compiler now crashes properly SI-5278  7a99c03da1  Don't generate redundant interfaces. SI-5230  9393efc68a  Reification of classes now produces trees that can be compiled and run. SI-5117  66b6ad4cac  Make Enumeration.ValueSet Serializable SI-4658  db7bd31896  Makes Range#sum an O(1) operation instead of an O(n) one. SI-3481, SI-3481  6ecca6d2b5  Tests for SI-3481. SI-2196  989c0d0693  Improve performance of BitSet.size SI-3796  5d7da746b0  Re-enable RedBlack's ScalaCheck test, which was disabled at r21829. SI-4647  2d0f82898d  Improved BitSet implementations SI-5205  8eba9acbc4  Fixed -Xfuture 5.ds, deprecated 0-octal. SI-5245  ca37db37e9  Added the check against UnitClass in freeLocals... SI-5239  4e987a3cf0  Reflection toolboxes now respect settings that ... SI-3566  66bf8db3f1  test case for SI-3566 SI-1430  0bea2ab5f6  Fix for erroneous bytecode generation. SI-5223  afc755916f  Annotations reacquainted with reification. SI-3566  23d7024e71  - fixed code lifting of String, Int, ... SI-5054, SI-4898  03112a3a3d  Changed the way use cases are handled in scaladoc. SI-622  a17be60676  Make partest work with spaces in the path (from... SI-4355  eb0643210f  Implemented manifest-based class-paths. SI-1510, SI-622  f9278123eb  Always build command lines in partest as Seq[St... SI-5206  7eb6f102e8  Fix for unfortunate thinko recently introduced. SI-3047  47c9911a12  Enable the use of spaces in paths for the Scala... SI-3047  7c2c8c8adf  Enable the use of spaces in paths for the Scala... SI-4846  38a646ce5c  Sin some more. SI-4858  e864f48338  scala.bat expansion with quotes and spaces. SI-4019  0c4ad65950  Delayed expansion in scala.bat. SI-3047  bc2bd6e67a  More defense against spaces in paths. SI-4800  ea5aac152d  Made windows less aggressive about failing. SI-5062  d917d7c8a1  Makes -toolcp available on windows. SI-5089  f194a29a53  Deprecated ambiguous dot syntaxes. SI-5176, SI-5176  d01ab1ba46  Allow to load $class classes using Scala reflec... SI-5178  9f9932bd20  Fix for regression in overriding with defaults. SI-4766  0362b6af90  Fixing logic in structural types. SI-5152  c8683ff5bf  Fix crash with HK types. SI-5156  d6f9361e4b  Fixed hang in typechecker. SI-5147  4474d9ba20  Revert "Fix for Enumeration." SI-5147  1d4f2d4aa3  Fix for Enumeration. SI-3415  934f8015a2  Fix for SI-3415 regression. SI-4985  c0407608be  Fix for NumericRange boundary condition. SI-5052, SI-5115, SI-5052, SI-5115  bf0b9fcf84  Fixes NPE using iterator with an XML attribute ... SI-5099  8de176f454  Clean result of function type. SI-4970  2d3fe5733c  Fix for crasher in explicitouter. SI-4875  48a26b9c2b  Test case closes SI-4875. SI-4963  d1f89f473a  Fix ArrayStack.growArray at boundary. SI-4961  6c22499c40  Fix bug in example sort. SI-4957  bcf53cbe91  Test case closes SI-4957. SI-102  1b68611e04  Test case closes SI-102. SI-1100, SI-5108  fa3c892017  Fix for combinator regression. SI-3882  81fda510a7  Debugging note. SI-4762  c7ec0385c7  Warn about surprising shadowing. SI-5033  dd8706fc11  5033: align bound syms when comparing method types SI-5096, SI-5097  5fb68614da  AbstractPartialFunction. SI-5093  8fc7a72a2b  Cycle defense. SI-4899  d6eb989388  Fixing valueOfTerm in the repl. SI-5080  581fad662c  Fix for multiple evaluation in structural calls. SI-5077  f434a6d49e  Donated some parens to Any. SI-5078  5575b8c368  Harden the typer against surprise unapply types. SI-5023  e52053f10b  Fix regression in companion check. SI-5071  d3f0fa824b  Propagate self-type to specialized subclasses. SI-5032  168f8065ea  Throw different exception. SI-4176  bc4468cdd2  Flipped varargs eta-expansion behavior. SI-5067  2c1a1192ce  Fix for error printing regression. SI-5055  4646937ff8  Fixes to javascript in Scaladoc, contributed by... SI-5060  0afd6d1b19  Closing soundness hole in variance checking. SI-5056  c7f14dbbcc  Consistent hashCode for Symbol. SI-4319  34387c7184  Improved an error message. SI-5012  8987550566  Fix bug in ModuleDef elimination. SI-4981  3a1332c451  BigDecimal adjustments. SI-5026  a90fbf59ae  Stripped a bunch of hostile code. SI-1799  e412524fee  ProductN, and method synthesis toolbox. SI-4933  2553cc1fdc  ListBuffer.size should be O(1). SI-4924  a26fc299ca  Scaladoc now hides members with @bridge annotat... SI-4938  acc4c04b0c  Refine lub calculation. SI-4807  cbf8534ff7  Helping Proxy equal itself. SI-4819, SI-4820, SI-4983, SI-4789, SI-4819, SI-4820, SI-4983  bcdd1882f1  Fix various InnerClasses bugs. SI-4979  ca15d245fd  Brought back unrelated type comparison warning. SI-4943  f3114ec2a4  Improves the usability of Scaladoc when images ... SI-4794  2f4349e8dd  Intersection types made specializable. SI-4780  2c548eac23  Replaced various now-unnecessary casts with str... SI-4931  7e99a7d380  Maybe that last commit was closer than I thought. SI-4931  6a3b465ba9  Kludge: don't let getClass make it into bytecode. SI-4860  20859263f2  Removing the code which has been deprecated sin... SI-4821, SI-4821  f309513c9f  A conceivably pretty bad performance bug in bui... SI-4874  386dddde53  Turned up the defense against compiler exceptio... SI-4828  e3e64e4365  Optimizations for Seq's implementations of sequ... SI-4891  97da3af7a4  Fix java signature generation for traits: no cl... SI-4594  c1aaf1fc7a  Don't discard deprecation/unchecked warnings re... SI-4785  be31934db3  Fix for a bug in CharArrayReader which made tri... SI-4879  6fe5754cec  Better error message for case class/object matc... SI-2388  2b31bc81ad  Avoid some spurious errors after a cyclical ref... SI-4877  05382e2351  Improved structural type error messages, and ot... SI-4592  990fa046e6  Fixed bug in the disambiguation of f(foo='bar')... SI-4882  ead69ed245  Disallowed implicit modifier on auxiliary const... SI-4859  4f4a80ad5b  Don't want to chase NPEs around for the rest of... SI-4857  6d45fddd4c  Attacked classpaths to get "." off of it when i... SI-4499  39e50a12d2  Minor changes to the Scaladoc stylesheets, as s... SI-4861  daa26379ce  Working on jar creation infrastructure. SI-3628, SI-3628  b5865cd83f  Moved test out of pending, closes SI-3628, no r... SI-4851  4e488a6059  Added two new compiler options: SI-4853  5bbb198b24  Expression type argument instantiation should n... SI-4676  ac96200c92  Scaladoc shouldn't drop type arguments to alias... SI-4827  892ecd2db7  Changed forwarders not to generate final method... SI-4172, SI-4172  5dbb616610  Test case closes SI-4172 - I think the output i... SI-4782  1ad15b1f50  Discard empty strings in option position, but n... SI-4839  460f57d5d3  Enable implicit parameters in the presence of v... SI-1799, SI-1799  aafc0fe172  As per discussion documented in SI-1799, brough... SI-2873, SI-2873, SI-2873  03f3cb5fcd  Restored test case for SI-2873 which hubert had... SI-4802  ad775b3239  Make IterableLike.toIterator more efficient SI-4588  60085c5cf8  Fixes scaladoc layout for function arguments wi... SI-3343, SI-4018  87b1b72769  Fixed an issue with higher kinded type inferenc... SI-4703  3299ee0046  Upgraded jline to use jansi 1.6 in the belief i...