Enables incremental Kotlin compilation in Compose projects

This CL also allows using a compiler daemon, which should greatly increase the
speed of compilations.

A couple of issues were noted which this cl works around:

1. Inline override functions appear to break when:
a) in incremental / daemon mode
b) using IR for compilation

In any case Kotlin compiler will throw a warning for doing this, so we
probably shouldn't do this anyway.

2. I also noticed a strange issue where ComposableAnnotationChecker.get()
throws an exception, because the plugin appears to not have been
registered. It looks like it should be safe just to create a new one
anyway, but it seems like there might be some strange case when using
the daemon, where the project instance is stale or there is a race
condition in adding the plugins to the project.

Bug: b/144304390
Test: ./gradlew bOS, a few incremental compilations
Change-Id: Ia001c864199ba6d7879952ede8194b6f1b97cad3
diff --git a/compose/compose-compiler-hosted/src/main/java/androidx/compose/plugins/kotlin/ComposeDiagnosticSuppressor.kt b/compose/compose-compiler-hosted/src/main/java/androidx/compose/plugins/kotlin/ComposeDiagnosticSuppressor.kt
index b73d45f..7a41ed0 100644
--- a/compose/compose-compiler-hosted/src/main/java/androidx/compose/plugins/kotlin/ComposeDiagnosticSuppressor.kt
+++ b/compose/compose-compiler-hosted/src/main/java/androidx/compose/plugins/kotlin/ComposeDiagnosticSuppressor.kt
@@ -70,10 +70,9 @@
                     "trace to resolve ktx call",
                     functionCall
                 )
-                if (call != null) return ComposableAnnotationChecker.get(
-                    diagnostic.psiElement.project
-                ).shouldInvokeAsTag(temporaryTrace, call)
-                return false
+                if (call != null) {
+                    return ComposableAnnotationChecker().shouldInvokeAsTag(temporaryTrace, call)
+                }
             }
         }
         return false
diff --git a/ui/gradle.properties b/ui/gradle.properties
index 39f2467..9b15dee 100644
--- a/ui/gradle.properties
+++ b/ui/gradle.properties
@@ -1,4 +1,4 @@
-org.gradle.jvmargs=-Xmx8g -Dkotlin.compiler.execution.strategy="in-process"
+org.gradle.jvmargs=-Xmx8g
 org.gradle.daemon=true
 org.gradle.configureondemand=true
 org.gradle.parallel=true
@@ -6,9 +6,6 @@
 android.builder.sdkDownload=false
 android.useAndroidX=true
 android.enableAdditionalTestOutput=true
-// Disable incremental compilation explicitly because of https://youtrack.jetbrains.com/issue/KT-30492.
-// Anyhow, it is supported only in daemon mode.
-kotlin.incremental=false
 // Run multiple kotlin compilations in parallel within the same project.
 // See also https://github.com/JetBrains/kotlin/blob/1978db9d0e68a2ec29aded30a07e9c3c740c29f6/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinProperties.kt#L100 and https://blog.jetbrains.com/kotlin/2019/01/kotlin-1-3-20-released/
 kotlin.parallel.tasks.in.project=true
diff --git a/ui/ui-core/api/0.1.0-dev04.txt b/ui/ui-core/api/0.1.0-dev04.txt
index 3390999..7cad7fe 100644
--- a/ui/ui-core/api/0.1.0-dev04.txt
+++ b/ui/ui-core/api/0.1.0-dev04.txt
@@ -201,7 +201,7 @@
 
   public final class Dp implements java.lang.Comparable<androidx.ui.core.Dp> {
     ctor public Dp(float value);
-    method public inline operator int compareTo(androidx.ui.core.Dp other);
+    method public operator int compareTo(androidx.ui.core.Dp other);
     method public float component1();
     method public androidx.ui.core.Dp copy(float value);
     method public inline operator androidx.ui.core.Dp div(float other);
@@ -228,8 +228,8 @@
 
   public final inline class DpCubed implements java.lang.Comparable<androidx.ui.core.DpCubed> {
     ctor public DpCubed();
-    method public inline operator int compareTo-zqpl1kg(float p);
-    method public static inline operator int compareTo-zqpl1kg(float $this, float other);
+    method public operator int compareTo-zqpl1kg(float p);
+    method public static operator int compareTo-zqpl1kg(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator androidx.ui.core.Dp div-KkBJKWw(float $this, float other);
     method public static inline operator float div-impl(float $this, float other);
@@ -247,8 +247,8 @@
 
   public final inline class DpInverse implements java.lang.Comparable<androidx.ui.core.DpInverse> {
     ctor public DpInverse();
-    method public inline operator int compareTo-ASDJgtI(float p);
-    method public static inline operator int compareTo-ASDJgtI(float $this, float other);
+    method public operator int compareTo-ASDJgtI(float p);
+    method public static operator int compareTo-ASDJgtI(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static boolean equals-impl(float p, Object? p1);
@@ -298,8 +298,8 @@
 
   public final inline class DpSquared implements java.lang.Comparable<androidx.ui.core.DpSquared> {
     ctor public DpSquared();
-    method public inline operator int compareTo-KkBJKWw(float p);
-    method public static inline operator int compareTo-KkBJKWw(float $this, float other);
+    method public operator int compareTo-KkBJKWw(float p);
+    method public static operator int compareTo-KkBJKWw(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-KkBJKWw(float $this, float other);
     method public static inline operator float div-impl(float $this, float other);
@@ -402,7 +402,7 @@
 
   public final class IntPx implements java.lang.Comparable<androidx.ui.core.IntPx> {
     ctor public IntPx(int value);
-    method public inline operator int compareTo(androidx.ui.core.IntPx other);
+    method public operator int compareTo(androidx.ui.core.IntPx other);
     method public inline operator int compareTo(androidx.ui.core.Px other);
     method public int component1();
     method public androidx.ui.core.IntPx copy(int value);
@@ -674,7 +674,7 @@
 
   public final class Px implements java.lang.Comparable<androidx.ui.core.Px> {
     ctor public Px(float value);
-    method public inline operator int compareTo(androidx.ui.core.Px other);
+    method public operator int compareTo(androidx.ui.core.Px other);
     method public inline operator int compareTo(androidx.ui.core.IntPx other);
     method public float component1();
     method public androidx.ui.core.Px copy(float value);
@@ -717,8 +717,8 @@
 
   public final inline class PxCubed implements java.lang.Comparable<androidx.ui.core.PxCubed> {
     ctor public PxCubed();
-    method public inline operator int compareTo-syUR1PY(float p);
-    method public static inline operator int compareTo-syUR1PY(float $this, float other);
+    method public operator int compareTo-syUR1PY(float p);
+    method public static operator int compareTo-syUR1PY(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static inline operator float div-impl(float $this, androidx.ui.core.Px other);
@@ -736,8 +736,8 @@
 
   public final inline class PxInverse implements java.lang.Comparable<androidx.ui.core.PxInverse> {
     ctor public PxInverse();
-    method public inline operator int compareTo-MXEAIGs(float p);
-    method public static inline operator int compareTo-MXEAIGs(float $this, float other);
+    method public operator int compareTo-MXEAIGs(float p);
+    method public static operator int compareTo-MXEAIGs(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static boolean equals-impl(float p, Object? p1);
@@ -830,8 +830,8 @@
 
   public final inline class PxSquared implements java.lang.Comparable<androidx.ui.core.PxSquared> {
     ctor public PxSquared();
-    method public inline operator int compareTo-kVJEwbQ(float p);
-    method public static inline operator int compareTo-kVJEwbQ(float $this, float other);
+    method public operator int compareTo-kVJEwbQ(float p);
+    method public static operator int compareTo-kVJEwbQ(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static inline operator androidx.ui.core.Px div-impl(float $this, androidx.ui.core.Px other);
diff --git a/ui/ui-core/api/current.txt b/ui/ui-core/api/current.txt
index 3390999..7cad7fe 100644
--- a/ui/ui-core/api/current.txt
+++ b/ui/ui-core/api/current.txt
@@ -201,7 +201,7 @@
 
   public final class Dp implements java.lang.Comparable<androidx.ui.core.Dp> {
     ctor public Dp(float value);
-    method public inline operator int compareTo(androidx.ui.core.Dp other);
+    method public operator int compareTo(androidx.ui.core.Dp other);
     method public float component1();
     method public androidx.ui.core.Dp copy(float value);
     method public inline operator androidx.ui.core.Dp div(float other);
@@ -228,8 +228,8 @@
 
   public final inline class DpCubed implements java.lang.Comparable<androidx.ui.core.DpCubed> {
     ctor public DpCubed();
-    method public inline operator int compareTo-zqpl1kg(float p);
-    method public static inline operator int compareTo-zqpl1kg(float $this, float other);
+    method public operator int compareTo-zqpl1kg(float p);
+    method public static operator int compareTo-zqpl1kg(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator androidx.ui.core.Dp div-KkBJKWw(float $this, float other);
     method public static inline operator float div-impl(float $this, float other);
@@ -247,8 +247,8 @@
 
   public final inline class DpInverse implements java.lang.Comparable<androidx.ui.core.DpInverse> {
     ctor public DpInverse();
-    method public inline operator int compareTo-ASDJgtI(float p);
-    method public static inline operator int compareTo-ASDJgtI(float $this, float other);
+    method public operator int compareTo-ASDJgtI(float p);
+    method public static operator int compareTo-ASDJgtI(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static boolean equals-impl(float p, Object? p1);
@@ -298,8 +298,8 @@
 
   public final inline class DpSquared implements java.lang.Comparable<androidx.ui.core.DpSquared> {
     ctor public DpSquared();
-    method public inline operator int compareTo-KkBJKWw(float p);
-    method public static inline operator int compareTo-KkBJKWw(float $this, float other);
+    method public operator int compareTo-KkBJKWw(float p);
+    method public static operator int compareTo-KkBJKWw(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-KkBJKWw(float $this, float other);
     method public static inline operator float div-impl(float $this, float other);
@@ -402,7 +402,7 @@
 
   public final class IntPx implements java.lang.Comparable<androidx.ui.core.IntPx> {
     ctor public IntPx(int value);
-    method public inline operator int compareTo(androidx.ui.core.IntPx other);
+    method public operator int compareTo(androidx.ui.core.IntPx other);
     method public inline operator int compareTo(androidx.ui.core.Px other);
     method public int component1();
     method public androidx.ui.core.IntPx copy(int value);
@@ -674,7 +674,7 @@
 
   public final class Px implements java.lang.Comparable<androidx.ui.core.Px> {
     ctor public Px(float value);
-    method public inline operator int compareTo(androidx.ui.core.Px other);
+    method public operator int compareTo(androidx.ui.core.Px other);
     method public inline operator int compareTo(androidx.ui.core.IntPx other);
     method public float component1();
     method public androidx.ui.core.Px copy(float value);
@@ -717,8 +717,8 @@
 
   public final inline class PxCubed implements java.lang.Comparable<androidx.ui.core.PxCubed> {
     ctor public PxCubed();
-    method public inline operator int compareTo-syUR1PY(float p);
-    method public static inline operator int compareTo-syUR1PY(float $this, float other);
+    method public operator int compareTo-syUR1PY(float p);
+    method public static operator int compareTo-syUR1PY(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static inline operator float div-impl(float $this, androidx.ui.core.Px other);
@@ -736,8 +736,8 @@
 
   public final inline class PxInverse implements java.lang.Comparable<androidx.ui.core.PxInverse> {
     ctor public PxInverse();
-    method public inline operator int compareTo-MXEAIGs(float p);
-    method public static inline operator int compareTo-MXEAIGs(float $this, float other);
+    method public operator int compareTo-MXEAIGs(float p);
+    method public static operator int compareTo-MXEAIGs(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static boolean equals-impl(float p, Object? p1);
@@ -830,8 +830,8 @@
 
   public final inline class PxSquared implements java.lang.Comparable<androidx.ui.core.PxSquared> {
     ctor public PxSquared();
-    method public inline operator int compareTo-kVJEwbQ(float p);
-    method public static inline operator int compareTo-kVJEwbQ(float $this, float other);
+    method public operator int compareTo-kVJEwbQ(float p);
+    method public static operator int compareTo-kVJEwbQ(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static inline operator androidx.ui.core.Px div-impl(float $this, androidx.ui.core.Px other);
diff --git a/ui/ui-core/api/public_plus_experimental_0.1.0-dev04.txt b/ui/ui-core/api/public_plus_experimental_0.1.0-dev04.txt
index 3390999..7cad7fe 100644
--- a/ui/ui-core/api/public_plus_experimental_0.1.0-dev04.txt
+++ b/ui/ui-core/api/public_plus_experimental_0.1.0-dev04.txt
@@ -201,7 +201,7 @@
 
   public final class Dp implements java.lang.Comparable<androidx.ui.core.Dp> {
     ctor public Dp(float value);
-    method public inline operator int compareTo(androidx.ui.core.Dp other);
+    method public operator int compareTo(androidx.ui.core.Dp other);
     method public float component1();
     method public androidx.ui.core.Dp copy(float value);
     method public inline operator androidx.ui.core.Dp div(float other);
@@ -228,8 +228,8 @@
 
   public final inline class DpCubed implements java.lang.Comparable<androidx.ui.core.DpCubed> {
     ctor public DpCubed();
-    method public inline operator int compareTo-zqpl1kg(float p);
-    method public static inline operator int compareTo-zqpl1kg(float $this, float other);
+    method public operator int compareTo-zqpl1kg(float p);
+    method public static operator int compareTo-zqpl1kg(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator androidx.ui.core.Dp div-KkBJKWw(float $this, float other);
     method public static inline operator float div-impl(float $this, float other);
@@ -247,8 +247,8 @@
 
   public final inline class DpInverse implements java.lang.Comparable<androidx.ui.core.DpInverse> {
     ctor public DpInverse();
-    method public inline operator int compareTo-ASDJgtI(float p);
-    method public static inline operator int compareTo-ASDJgtI(float $this, float other);
+    method public operator int compareTo-ASDJgtI(float p);
+    method public static operator int compareTo-ASDJgtI(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static boolean equals-impl(float p, Object? p1);
@@ -298,8 +298,8 @@
 
   public final inline class DpSquared implements java.lang.Comparable<androidx.ui.core.DpSquared> {
     ctor public DpSquared();
-    method public inline operator int compareTo-KkBJKWw(float p);
-    method public static inline operator int compareTo-KkBJKWw(float $this, float other);
+    method public operator int compareTo-KkBJKWw(float p);
+    method public static operator int compareTo-KkBJKWw(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-KkBJKWw(float $this, float other);
     method public static inline operator float div-impl(float $this, float other);
@@ -402,7 +402,7 @@
 
   public final class IntPx implements java.lang.Comparable<androidx.ui.core.IntPx> {
     ctor public IntPx(int value);
-    method public inline operator int compareTo(androidx.ui.core.IntPx other);
+    method public operator int compareTo(androidx.ui.core.IntPx other);
     method public inline operator int compareTo(androidx.ui.core.Px other);
     method public int component1();
     method public androidx.ui.core.IntPx copy(int value);
@@ -674,7 +674,7 @@
 
   public final class Px implements java.lang.Comparable<androidx.ui.core.Px> {
     ctor public Px(float value);
-    method public inline operator int compareTo(androidx.ui.core.Px other);
+    method public operator int compareTo(androidx.ui.core.Px other);
     method public inline operator int compareTo(androidx.ui.core.IntPx other);
     method public float component1();
     method public androidx.ui.core.Px copy(float value);
@@ -717,8 +717,8 @@
 
   public final inline class PxCubed implements java.lang.Comparable<androidx.ui.core.PxCubed> {
     ctor public PxCubed();
-    method public inline operator int compareTo-syUR1PY(float p);
-    method public static inline operator int compareTo-syUR1PY(float $this, float other);
+    method public operator int compareTo-syUR1PY(float p);
+    method public static operator int compareTo-syUR1PY(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static inline operator float div-impl(float $this, androidx.ui.core.Px other);
@@ -736,8 +736,8 @@
 
   public final inline class PxInverse implements java.lang.Comparable<androidx.ui.core.PxInverse> {
     ctor public PxInverse();
-    method public inline operator int compareTo-MXEAIGs(float p);
-    method public static inline operator int compareTo-MXEAIGs(float $this, float other);
+    method public operator int compareTo-MXEAIGs(float p);
+    method public static operator int compareTo-MXEAIGs(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static boolean equals-impl(float p, Object? p1);
@@ -830,8 +830,8 @@
 
   public final inline class PxSquared implements java.lang.Comparable<androidx.ui.core.PxSquared> {
     ctor public PxSquared();
-    method public inline operator int compareTo-kVJEwbQ(float p);
-    method public static inline operator int compareTo-kVJEwbQ(float $this, float other);
+    method public operator int compareTo-kVJEwbQ(float p);
+    method public static operator int compareTo-kVJEwbQ(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static inline operator androidx.ui.core.Px div-impl(float $this, androidx.ui.core.Px other);
diff --git a/ui/ui-core/api/public_plus_experimental_current.txt b/ui/ui-core/api/public_plus_experimental_current.txt
index 3390999..7cad7fe 100644
--- a/ui/ui-core/api/public_plus_experimental_current.txt
+++ b/ui/ui-core/api/public_plus_experimental_current.txt
@@ -201,7 +201,7 @@
 
   public final class Dp implements java.lang.Comparable<androidx.ui.core.Dp> {
     ctor public Dp(float value);
-    method public inline operator int compareTo(androidx.ui.core.Dp other);
+    method public operator int compareTo(androidx.ui.core.Dp other);
     method public float component1();
     method public androidx.ui.core.Dp copy(float value);
     method public inline operator androidx.ui.core.Dp div(float other);
@@ -228,8 +228,8 @@
 
   public final inline class DpCubed implements java.lang.Comparable<androidx.ui.core.DpCubed> {
     ctor public DpCubed();
-    method public inline operator int compareTo-zqpl1kg(float p);
-    method public static inline operator int compareTo-zqpl1kg(float $this, float other);
+    method public operator int compareTo-zqpl1kg(float p);
+    method public static operator int compareTo-zqpl1kg(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator androidx.ui.core.Dp div-KkBJKWw(float $this, float other);
     method public static inline operator float div-impl(float $this, float other);
@@ -247,8 +247,8 @@
 
   public final inline class DpInverse implements java.lang.Comparable<androidx.ui.core.DpInverse> {
     ctor public DpInverse();
-    method public inline operator int compareTo-ASDJgtI(float p);
-    method public static inline operator int compareTo-ASDJgtI(float $this, float other);
+    method public operator int compareTo-ASDJgtI(float p);
+    method public static operator int compareTo-ASDJgtI(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static boolean equals-impl(float p, Object? p1);
@@ -298,8 +298,8 @@
 
   public final inline class DpSquared implements java.lang.Comparable<androidx.ui.core.DpSquared> {
     ctor public DpSquared();
-    method public inline operator int compareTo-KkBJKWw(float p);
-    method public static inline operator int compareTo-KkBJKWw(float $this, float other);
+    method public operator int compareTo-KkBJKWw(float p);
+    method public static operator int compareTo-KkBJKWw(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-KkBJKWw(float $this, float other);
     method public static inline operator float div-impl(float $this, float other);
@@ -402,7 +402,7 @@
 
   public final class IntPx implements java.lang.Comparable<androidx.ui.core.IntPx> {
     ctor public IntPx(int value);
-    method public inline operator int compareTo(androidx.ui.core.IntPx other);
+    method public operator int compareTo(androidx.ui.core.IntPx other);
     method public inline operator int compareTo(androidx.ui.core.Px other);
     method public int component1();
     method public androidx.ui.core.IntPx copy(int value);
@@ -674,7 +674,7 @@
 
   public final class Px implements java.lang.Comparable<androidx.ui.core.Px> {
     ctor public Px(float value);
-    method public inline operator int compareTo(androidx.ui.core.Px other);
+    method public operator int compareTo(androidx.ui.core.Px other);
     method public inline operator int compareTo(androidx.ui.core.IntPx other);
     method public float component1();
     method public androidx.ui.core.Px copy(float value);
@@ -717,8 +717,8 @@
 
   public final inline class PxCubed implements java.lang.Comparable<androidx.ui.core.PxCubed> {
     ctor public PxCubed();
-    method public inline operator int compareTo-syUR1PY(float p);
-    method public static inline operator int compareTo-syUR1PY(float $this, float other);
+    method public operator int compareTo-syUR1PY(float p);
+    method public static operator int compareTo-syUR1PY(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static inline operator float div-impl(float $this, androidx.ui.core.Px other);
@@ -736,8 +736,8 @@
 
   public final inline class PxInverse implements java.lang.Comparable<androidx.ui.core.PxInverse> {
     ctor public PxInverse();
-    method public inline operator int compareTo-MXEAIGs(float p);
-    method public static inline operator int compareTo-MXEAIGs(float $this, float other);
+    method public operator int compareTo-MXEAIGs(float p);
+    method public static operator int compareTo-MXEAIGs(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static boolean equals-impl(float p, Object? p1);
@@ -830,8 +830,8 @@
 
   public final inline class PxSquared implements java.lang.Comparable<androidx.ui.core.PxSquared> {
     ctor public PxSquared();
-    method public inline operator int compareTo-kVJEwbQ(float p);
-    method public static inline operator int compareTo-kVJEwbQ(float $this, float other);
+    method public operator int compareTo-kVJEwbQ(float p);
+    method public static operator int compareTo-kVJEwbQ(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static inline operator androidx.ui.core.Px div-impl(float $this, androidx.ui.core.Px other);
diff --git a/ui/ui-core/api/restricted_0.1.0-dev04.txt b/ui/ui-core/api/restricted_0.1.0-dev04.txt
index 3390999..7cad7fe 100644
--- a/ui/ui-core/api/restricted_0.1.0-dev04.txt
+++ b/ui/ui-core/api/restricted_0.1.0-dev04.txt
@@ -201,7 +201,7 @@
 
   public final class Dp implements java.lang.Comparable<androidx.ui.core.Dp> {
     ctor public Dp(float value);
-    method public inline operator int compareTo(androidx.ui.core.Dp other);
+    method public operator int compareTo(androidx.ui.core.Dp other);
     method public float component1();
     method public androidx.ui.core.Dp copy(float value);
     method public inline operator androidx.ui.core.Dp div(float other);
@@ -228,8 +228,8 @@
 
   public final inline class DpCubed implements java.lang.Comparable<androidx.ui.core.DpCubed> {
     ctor public DpCubed();
-    method public inline operator int compareTo-zqpl1kg(float p);
-    method public static inline operator int compareTo-zqpl1kg(float $this, float other);
+    method public operator int compareTo-zqpl1kg(float p);
+    method public static operator int compareTo-zqpl1kg(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator androidx.ui.core.Dp div-KkBJKWw(float $this, float other);
     method public static inline operator float div-impl(float $this, float other);
@@ -247,8 +247,8 @@
 
   public final inline class DpInverse implements java.lang.Comparable<androidx.ui.core.DpInverse> {
     ctor public DpInverse();
-    method public inline operator int compareTo-ASDJgtI(float p);
-    method public static inline operator int compareTo-ASDJgtI(float $this, float other);
+    method public operator int compareTo-ASDJgtI(float p);
+    method public static operator int compareTo-ASDJgtI(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static boolean equals-impl(float p, Object? p1);
@@ -298,8 +298,8 @@
 
   public final inline class DpSquared implements java.lang.Comparable<androidx.ui.core.DpSquared> {
     ctor public DpSquared();
-    method public inline operator int compareTo-KkBJKWw(float p);
-    method public static inline operator int compareTo-KkBJKWw(float $this, float other);
+    method public operator int compareTo-KkBJKWw(float p);
+    method public static operator int compareTo-KkBJKWw(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-KkBJKWw(float $this, float other);
     method public static inline operator float div-impl(float $this, float other);
@@ -402,7 +402,7 @@
 
   public final class IntPx implements java.lang.Comparable<androidx.ui.core.IntPx> {
     ctor public IntPx(int value);
-    method public inline operator int compareTo(androidx.ui.core.IntPx other);
+    method public operator int compareTo(androidx.ui.core.IntPx other);
     method public inline operator int compareTo(androidx.ui.core.Px other);
     method public int component1();
     method public androidx.ui.core.IntPx copy(int value);
@@ -674,7 +674,7 @@
 
   public final class Px implements java.lang.Comparable<androidx.ui.core.Px> {
     ctor public Px(float value);
-    method public inline operator int compareTo(androidx.ui.core.Px other);
+    method public operator int compareTo(androidx.ui.core.Px other);
     method public inline operator int compareTo(androidx.ui.core.IntPx other);
     method public float component1();
     method public androidx.ui.core.Px copy(float value);
@@ -717,8 +717,8 @@
 
   public final inline class PxCubed implements java.lang.Comparable<androidx.ui.core.PxCubed> {
     ctor public PxCubed();
-    method public inline operator int compareTo-syUR1PY(float p);
-    method public static inline operator int compareTo-syUR1PY(float $this, float other);
+    method public operator int compareTo-syUR1PY(float p);
+    method public static operator int compareTo-syUR1PY(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static inline operator float div-impl(float $this, androidx.ui.core.Px other);
@@ -736,8 +736,8 @@
 
   public final inline class PxInverse implements java.lang.Comparable<androidx.ui.core.PxInverse> {
     ctor public PxInverse();
-    method public inline operator int compareTo-MXEAIGs(float p);
-    method public static inline operator int compareTo-MXEAIGs(float $this, float other);
+    method public operator int compareTo-MXEAIGs(float p);
+    method public static operator int compareTo-MXEAIGs(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static boolean equals-impl(float p, Object? p1);
@@ -830,8 +830,8 @@
 
   public final inline class PxSquared implements java.lang.Comparable<androidx.ui.core.PxSquared> {
     ctor public PxSquared();
-    method public inline operator int compareTo-kVJEwbQ(float p);
-    method public static inline operator int compareTo-kVJEwbQ(float $this, float other);
+    method public operator int compareTo-kVJEwbQ(float p);
+    method public static operator int compareTo-kVJEwbQ(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static inline operator androidx.ui.core.Px div-impl(float $this, androidx.ui.core.Px other);
diff --git a/ui/ui-core/api/restricted_current.txt b/ui/ui-core/api/restricted_current.txt
index 3390999..7cad7fe 100644
--- a/ui/ui-core/api/restricted_current.txt
+++ b/ui/ui-core/api/restricted_current.txt
@@ -201,7 +201,7 @@
 
   public final class Dp implements java.lang.Comparable<androidx.ui.core.Dp> {
     ctor public Dp(float value);
-    method public inline operator int compareTo(androidx.ui.core.Dp other);
+    method public operator int compareTo(androidx.ui.core.Dp other);
     method public float component1();
     method public androidx.ui.core.Dp copy(float value);
     method public inline operator androidx.ui.core.Dp div(float other);
@@ -228,8 +228,8 @@
 
   public final inline class DpCubed implements java.lang.Comparable<androidx.ui.core.DpCubed> {
     ctor public DpCubed();
-    method public inline operator int compareTo-zqpl1kg(float p);
-    method public static inline operator int compareTo-zqpl1kg(float $this, float other);
+    method public operator int compareTo-zqpl1kg(float p);
+    method public static operator int compareTo-zqpl1kg(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator androidx.ui.core.Dp div-KkBJKWw(float $this, float other);
     method public static inline operator float div-impl(float $this, float other);
@@ -247,8 +247,8 @@
 
   public final inline class DpInverse implements java.lang.Comparable<androidx.ui.core.DpInverse> {
     ctor public DpInverse();
-    method public inline operator int compareTo-ASDJgtI(float p);
-    method public static inline operator int compareTo-ASDJgtI(float $this, float other);
+    method public operator int compareTo-ASDJgtI(float p);
+    method public static operator int compareTo-ASDJgtI(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static boolean equals-impl(float p, Object? p1);
@@ -298,8 +298,8 @@
 
   public final inline class DpSquared implements java.lang.Comparable<androidx.ui.core.DpSquared> {
     ctor public DpSquared();
-    method public inline operator int compareTo-KkBJKWw(float p);
-    method public static inline operator int compareTo-KkBJKWw(float $this, float other);
+    method public operator int compareTo-KkBJKWw(float p);
+    method public static operator int compareTo-KkBJKWw(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-KkBJKWw(float $this, float other);
     method public static inline operator float div-impl(float $this, float other);
@@ -402,7 +402,7 @@
 
   public final class IntPx implements java.lang.Comparable<androidx.ui.core.IntPx> {
     ctor public IntPx(int value);
-    method public inline operator int compareTo(androidx.ui.core.IntPx other);
+    method public operator int compareTo(androidx.ui.core.IntPx other);
     method public inline operator int compareTo(androidx.ui.core.Px other);
     method public int component1();
     method public androidx.ui.core.IntPx copy(int value);
@@ -674,7 +674,7 @@
 
   public final class Px implements java.lang.Comparable<androidx.ui.core.Px> {
     ctor public Px(float value);
-    method public inline operator int compareTo(androidx.ui.core.Px other);
+    method public operator int compareTo(androidx.ui.core.Px other);
     method public inline operator int compareTo(androidx.ui.core.IntPx other);
     method public float component1();
     method public androidx.ui.core.Px copy(float value);
@@ -717,8 +717,8 @@
 
   public final inline class PxCubed implements java.lang.Comparable<androidx.ui.core.PxCubed> {
     ctor public PxCubed();
-    method public inline operator int compareTo-syUR1PY(float p);
-    method public static inline operator int compareTo-syUR1PY(float $this, float other);
+    method public operator int compareTo-syUR1PY(float p);
+    method public static operator int compareTo-syUR1PY(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static inline operator float div-impl(float $this, androidx.ui.core.Px other);
@@ -736,8 +736,8 @@
 
   public final inline class PxInverse implements java.lang.Comparable<androidx.ui.core.PxInverse> {
     ctor public PxInverse();
-    method public inline operator int compareTo-MXEAIGs(float p);
-    method public static inline operator int compareTo-MXEAIGs(float $this, float other);
+    method public operator int compareTo-MXEAIGs(float p);
+    method public static operator int compareTo-MXEAIGs(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static boolean equals-impl(float p, Object? p1);
@@ -830,8 +830,8 @@
 
   public final inline class PxSquared implements java.lang.Comparable<androidx.ui.core.PxSquared> {
     ctor public PxSquared();
-    method public inline operator int compareTo-kVJEwbQ(float p);
-    method public static inline operator int compareTo-kVJEwbQ(float $this, float other);
+    method public operator int compareTo-kVJEwbQ(float p);
+    method public static operator int compareTo-kVJEwbQ(float $this, float other);
     method public static float constructor-impl(float value);
     method public static inline operator float div-impl(float $this, float other);
     method public static inline operator androidx.ui.core.Px div-impl(float $this, androidx.ui.core.Px other);
diff --git a/ui/ui-core/src/main/java/androidx/ui/core/Dp.kt b/ui/ui-core/src/main/java/androidx/ui/core/Dp.kt
index e8917eb..225e696 100644
--- a/ui/ui-core/src/main/java/androidx/ui/core/Dp.kt
+++ b/ui/ui-core/src/main/java/androidx/ui/core/Dp.kt
@@ -101,8 +101,7 @@
     /**
      * Support comparing Dimensions with comparison operators.
      */
-    @Suppress("OVERRIDE_BY_INLINE")
-    override inline operator fun compareTo(other: Dp) = value.compareTo(other.value)
+    override /* TODO: inline */ operator fun compareTo(other: Dp) = value.compareTo(other.value)
 
     override fun toString() = "$value.dp"
 
@@ -278,8 +277,7 @@
     /**
      * Support comparing DpSquared with comparison operators.
      */
-    @Suppress("OVERRIDE_BY_INLINE")
-    override inline operator fun compareTo(other: DpSquared) =
+    override /* TODO: inline */ operator fun compareTo(other: DpSquared) =
         value.compareTo(other.value)
 
     override fun toString(): String = "$value.dp^2"
@@ -342,8 +340,8 @@
     /**
      * Support comparing DpCubed with comparison operators.
      */
-    @Suppress("OVERRIDE_BY_INLINE")
-    override inline operator fun compareTo(other: DpCubed) = value.compareTo(other.value)
+    override /* TODO: inline */ operator fun compareTo(other: DpCubed) =
+        value.compareTo(other.value)
 
     override fun toString(): String = "$value.dp^3"
 }
@@ -403,8 +401,7 @@
     /**
      * Support comparing DpInverse with comparison operators.
      */
-    @Suppress("OVERRIDE_BY_INLINE")
-    override inline operator fun compareTo(other: DpInverse) =
+    override /* TODO: inline */ operator fun compareTo(other: DpInverse) =
         value.compareTo(other.value)
 
     override fun toString(): String = "$value.dp^-1"
diff --git a/ui/ui-core/src/main/java/androidx/ui/core/IntPx.kt b/ui/ui-core/src/main/java/androidx/ui/core/IntPx.kt
index 5b12588..3214b21 100644
--- a/ui/ui-core/src/main/java/androidx/ui/core/IntPx.kt
+++ b/ui/ui-core/src/main/java/androidx/ui/core/IntPx.kt
@@ -100,8 +100,7 @@
     /**
      * Support comparing Dimensions with comparison operators.
      */
-    @Suppress("OVERRIDE_BY_INLINE")
-    override inline operator fun compareTo(other: IntPx) = value.compareTo(other.value)
+    override /* TODO: inline */ operator fun compareTo(other: IntPx) = value.compareTo(other.value)
 
     /**
      * Compares this [IntPx] to another [Px]
diff --git a/ui/ui-core/src/main/java/androidx/ui/core/Px.kt b/ui/ui-core/src/main/java/androidx/ui/core/Px.kt
index df43cc0..75d5c0a 100644
--- a/ui/ui-core/src/main/java/androidx/ui/core/Px.kt
+++ b/ui/ui-core/src/main/java/androidx/ui/core/Px.kt
@@ -100,8 +100,7 @@
     /**
      * Compare [Px] with another [Px].
      */
-    @Suppress("OVERRIDE_BY_INLINE")
-    override inline operator fun compareTo(other: Px) = value.compareTo(other.value)
+    override /* TODO: inline */ operator fun compareTo(other: Px) = value.compareTo(other.value)
 
     /**
      * Compares this [Px] to another [IntPx]
@@ -288,8 +287,7 @@
     /**
      * Support comparing PxSquared with comparison operators.
      */
-    @Suppress("OVERRIDE_BY_INLINE")
-    override inline operator fun compareTo(other: PxSquared) =
+    override /* TODO: inline */ operator fun compareTo(other: PxSquared) =
         value.compareTo(other.value)
 
     override fun toString(): String = "$value.px^2"
@@ -351,8 +349,8 @@
     /**
      * Support comparing PxCubed with comparison operators.
      */
-    @Suppress("OVERRIDE_BY_INLINE")
-    override inline operator fun compareTo(other: PxCubed) = value.compareTo(other.value)
+    override /* TODO: inline */ operator fun compareTo(other: PxCubed) =
+        value.compareTo(other.value)
 
     override fun toString(): String = "$value.px^3"
 }
@@ -413,8 +411,7 @@
     /**
      * Support comparing PxInverse with comparison operators.
      */
-    @Suppress("OVERRIDE_BY_INLINE")
-    override inline operator fun compareTo(other: PxInverse) =
+    override /* TODO: inline */ operator fun compareTo(other: PxInverse) =
         value.compareTo(other.value)
 
     override fun toString(): String = "$value.px^-1"
diff --git a/ui/ui-framework/api/0.1.0-dev04.txt b/ui/ui-framework/api/0.1.0-dev04.txt
index f503479..cfd6464 100644
--- a/ui/ui-framework/api/0.1.0-dev04.txt
+++ b/ui/ui-framework/api/0.1.0-dev04.txt
@@ -166,8 +166,8 @@
     method public inline void emit(Object key, kotlin.jvm.functions.Function0<androidx.ui.text.TextSpan> ctor, kotlin.jvm.functions.Function1<? super androidx.compose.ComposerUpdater<androidx.ui.text.TextSpan,androidx.ui.text.TextSpan>,kotlin.Unit> update, kotlin.jvm.functions.Function0<kotlin.Unit> children);
     method public inline <T> T! expr(Object key, kotlin.jvm.functions.Function0<? extends T> block);
     method public androidx.ui.core.TextSpanComposer getComposer();
-    method public inline Object joinKey(Object left, Object? right);
-    method public inline operator <V> V! unaryPlus(androidx.compose.Effect<V>);
+    method public Object joinKey(Object left, Object? right);
+    method public operator <V> V! unaryPlus(androidx.compose.Effect<V>);
   }
 
   public final class TextSpanScope {
diff --git a/ui/ui-framework/api/current.txt b/ui/ui-framework/api/current.txt
index f503479..cfd6464 100644
--- a/ui/ui-framework/api/current.txt
+++ b/ui/ui-framework/api/current.txt
@@ -166,8 +166,8 @@
     method public inline void emit(Object key, kotlin.jvm.functions.Function0<androidx.ui.text.TextSpan> ctor, kotlin.jvm.functions.Function1<? super androidx.compose.ComposerUpdater<androidx.ui.text.TextSpan,androidx.ui.text.TextSpan>,kotlin.Unit> update, kotlin.jvm.functions.Function0<kotlin.Unit> children);
     method public inline <T> T! expr(Object key, kotlin.jvm.functions.Function0<? extends T> block);
     method public androidx.ui.core.TextSpanComposer getComposer();
-    method public inline Object joinKey(Object left, Object? right);
-    method public inline operator <V> V! unaryPlus(androidx.compose.Effect<V>);
+    method public Object joinKey(Object left, Object? right);
+    method public operator <V> V! unaryPlus(androidx.compose.Effect<V>);
   }
 
   public final class TextSpanScope {
diff --git a/ui/ui-framework/api/public_plus_experimental_0.1.0-dev04.txt b/ui/ui-framework/api/public_plus_experimental_0.1.0-dev04.txt
index f503479..cfd6464 100644
--- a/ui/ui-framework/api/public_plus_experimental_0.1.0-dev04.txt
+++ b/ui/ui-framework/api/public_plus_experimental_0.1.0-dev04.txt
@@ -166,8 +166,8 @@
     method public inline void emit(Object key, kotlin.jvm.functions.Function0<androidx.ui.text.TextSpan> ctor, kotlin.jvm.functions.Function1<? super androidx.compose.ComposerUpdater<androidx.ui.text.TextSpan,androidx.ui.text.TextSpan>,kotlin.Unit> update, kotlin.jvm.functions.Function0<kotlin.Unit> children);
     method public inline <T> T! expr(Object key, kotlin.jvm.functions.Function0<? extends T> block);
     method public androidx.ui.core.TextSpanComposer getComposer();
-    method public inline Object joinKey(Object left, Object? right);
-    method public inline operator <V> V! unaryPlus(androidx.compose.Effect<V>);
+    method public Object joinKey(Object left, Object? right);
+    method public operator <V> V! unaryPlus(androidx.compose.Effect<V>);
   }
 
   public final class TextSpanScope {
diff --git a/ui/ui-framework/api/public_plus_experimental_current.txt b/ui/ui-framework/api/public_plus_experimental_current.txt
index f503479..cfd6464 100644
--- a/ui/ui-framework/api/public_plus_experimental_current.txt
+++ b/ui/ui-framework/api/public_plus_experimental_current.txt
@@ -166,8 +166,8 @@
     method public inline void emit(Object key, kotlin.jvm.functions.Function0<androidx.ui.text.TextSpan> ctor, kotlin.jvm.functions.Function1<? super androidx.compose.ComposerUpdater<androidx.ui.text.TextSpan,androidx.ui.text.TextSpan>,kotlin.Unit> update, kotlin.jvm.functions.Function0<kotlin.Unit> children);
     method public inline <T> T! expr(Object key, kotlin.jvm.functions.Function0<? extends T> block);
     method public androidx.ui.core.TextSpanComposer getComposer();
-    method public inline Object joinKey(Object left, Object? right);
-    method public inline operator <V> V! unaryPlus(androidx.compose.Effect<V>);
+    method public Object joinKey(Object left, Object? right);
+    method public operator <V> V! unaryPlus(androidx.compose.Effect<V>);
   }
 
   public final class TextSpanScope {
diff --git a/ui/ui-framework/api/restricted_0.1.0-dev04.txt b/ui/ui-framework/api/restricted_0.1.0-dev04.txt
index f503479..cfd6464 100644
--- a/ui/ui-framework/api/restricted_0.1.0-dev04.txt
+++ b/ui/ui-framework/api/restricted_0.1.0-dev04.txt
@@ -166,8 +166,8 @@
     method public inline void emit(Object key, kotlin.jvm.functions.Function0<androidx.ui.text.TextSpan> ctor, kotlin.jvm.functions.Function1<? super androidx.compose.ComposerUpdater<androidx.ui.text.TextSpan,androidx.ui.text.TextSpan>,kotlin.Unit> update, kotlin.jvm.functions.Function0<kotlin.Unit> children);
     method public inline <T> T! expr(Object key, kotlin.jvm.functions.Function0<? extends T> block);
     method public androidx.ui.core.TextSpanComposer getComposer();
-    method public inline Object joinKey(Object left, Object? right);
-    method public inline operator <V> V! unaryPlus(androidx.compose.Effect<V>);
+    method public Object joinKey(Object left, Object? right);
+    method public operator <V> V! unaryPlus(androidx.compose.Effect<V>);
   }
 
   public final class TextSpanScope {
diff --git a/ui/ui-framework/api/restricted_current.txt b/ui/ui-framework/api/restricted_current.txt
index f503479..cfd6464 100644
--- a/ui/ui-framework/api/restricted_current.txt
+++ b/ui/ui-framework/api/restricted_current.txt
@@ -166,8 +166,8 @@
     method public inline void emit(Object key, kotlin.jvm.functions.Function0<androidx.ui.text.TextSpan> ctor, kotlin.jvm.functions.Function1<? super androidx.compose.ComposerUpdater<androidx.ui.text.TextSpan,androidx.ui.text.TextSpan>,kotlin.Unit> update, kotlin.jvm.functions.Function0<kotlin.Unit> children);
     method public inline <T> T! expr(Object key, kotlin.jvm.functions.Function0<? extends T> block);
     method public androidx.ui.core.TextSpanComposer getComposer();
-    method public inline Object joinKey(Object left, Object? right);
-    method public inline operator <V> V! unaryPlus(androidx.compose.Effect<V>);
+    method public Object joinKey(Object left, Object? right);
+    method public operator <V> V! unaryPlus(androidx.compose.Effect<V>);
   }
 
   public final class TextSpanScope {
diff --git a/ui/ui-framework/src/main/java/androidx/ui/core/TextSpanCompose.kt b/ui/ui-framework/src/main/java/androidx/ui/core/TextSpanCompose.kt
index 64c2402..1d93205 100644
--- a/ui/ui-framework/src/main/java/androidx/ui/core/TextSpanCompose.kt
+++ b/ui/ui-framework/src/main/java/androidx/ui/core/TextSpanCompose.kt
@@ -86,8 +86,8 @@
 internal val invocation = Object()
 
 class TextSpanComposition(val composer: TextSpanComposer) {
-    @Suppress("NOTHING_TO_INLINE")
-    inline operator fun <V> Effect<V>.unaryPlus(): V = resolve([email protected])
+    /* TODO: inline */ operator fun <V> Effect<V>.unaryPlus(): V =
+        resolve([email protected])
 
     inline fun emit(
         key: Any,
@@ -117,8 +117,7 @@
         endNode()
     }
 
-    @Suppress("NOTHING_TO_INLINE")
-    inline fun joinKey(left: Any, right: Any?): Any = composer.joinKey(left, right)
+    /* TODO: inline */ fun joinKey(left: Any, right: Any?): Any = composer.joinKey(left, right)
 
     @Suppress("PLUGIN_WARNING")
     inline fun <T> expr(