Skip to content
Draft
Changes from 1 commit
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
25b1a4d
Optimizer settings
SolalPirelli Feb 9, 2026
a83dca4
Port analysis and opt directories
SolalPirelli Feb 9, 2026
a8292d3
Port AsmUtils changes
SolalPirelli Feb 9, 2026
d863c8f
Port BCodeUtils
SolalPirelli Feb 9, 2026
8327d43
Port BackendReporting additions
SolalPirelli Feb 9, 2026
e93a7bb
Port BackendUtils additions
SolalPirelli Feb 9, 2026
34c02ca
Port PPFrontendAccess changes
SolalPirelli Feb 9, 2026
400bfad
Port BCodeRepository and BTypesFromClassfile
SolalPirelli Feb 9, 2026
77133c7
Port BTypes additions for inliner structures
SolalPirelli Feb 9, 2026
b76c6d5
Port callsite position tracking in the call graph when generating inv…
SolalPirelli Feb 9, 2026
d1fd1a1
Add needed definitions to Definitions.scala
SolalPirelli Feb 11, 2026
f813533
Use the optimizer
SolalPirelli Feb 9, 2026
8eb5f91
INTERESTING STUFF BEGINS HERE. Tests.
SolalPirelli Feb 10, 2026
2a310cd
More explicit tests
SolalPirelli Feb 18, 2026
2a74140
Move BCInnerClassGen and typeToTypeKind functionality to CoreBTypes w…
SolalPirelli Feb 11, 2026
f328bfe
Do not filter files in ZipArchiveFileLookup when searching for an exa…
SolalPirelli Feb 12, 2026
95fd62b
Ignore return type when looking for lambdas as it may mismatch due to…
SolalPirelli Feb 13, 2026
7940272
Do not inline internal JDK modules
SolalPirelli Feb 16, 2026
239ea2d
Fix 'is effectively final' detection for enums in traits
SolalPirelli Feb 19, 2026
c3ab319
New optimization: recognize nonnull.equals(null)
SolalPirelli Feb 10, 2026
d62eff8
New optimization: handle TupleN.apply, not only new TupleN
SolalPirelli Feb 10, 2026
3b36639
New optimization: Consider TupleN.apply to always return a non-null v…
SolalPirelli Feb 10, 2026
ec75789
New optimization: Allow skipping init of TupleN modules
SolalPirelli Feb 12, 2026
ba759be
New optimization: Inline trait static forwarders
SolalPirelli Feb 12, 2026
9dea5e1
New optimization: recognize ClassTag(BoxedPrimitive.TYPE).newArray fo…
SolalPirelli Feb 13, 2026
854aecf
New optimization: do not keep unused static field loads from java/lan…
SolalPirelli Feb 18, 2026
dd82455
Cleanup: remove classes related to long-fixed bug SI 9111
SolalPirelli Feb 11, 2026
7f2c97c
Cleanup: Remove LazyWithoutLock, mostly protecting non-lazy stuff anyway
SolalPirelli Feb 13, 2026
1b27ed7
Move advanced settings behind Y...
SolalPirelli Feb 13, 2026
2eb3ae4
TEMP: enable optimizer always, for benchmarking
SolalPirelli Feb 13, 2026
0906e90
Regression test for failing ScalaJS
SolalPirelli Feb 19, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Regression test for failing ScalaJS
  • Loading branch information
SolalPirelli committed Feb 19, 2026
commit 0906e902ecdeb25a37f9daada3ae2dd916f51791
18 changes: 18 additions & 0 deletions tests/run/recursive-with-option.scala
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
//> using options -opt-inline:**

// Regression test for an optimizer bug originally found while compiling ScalaJS

object Test {
def foo(b: Option[Int]): Unit =
fooRec(x = 0, b)

private def fooRec(x: Int, b: Option[Int]): Unit = {
if (b.nonEmpty) {
fooRec(x + 1, b)
}
}

def main(args: Array[String]): Unit = {
foo(None)
}
}
Loading