================ Step #1 ================= Building module1 Cleaning output files: out/production/module1/module1.js out/production/module1/module1.meta.js out/production/module1/module1/foo/foo.kjsm End of files Compiling files: module1/src/A.kt End of files Marked as dirty by Kotlin: module2/src/AChild.kt module2/src/importA.kt module3/src/importAChild.kt Exit code: ADDITIONAL_PASS_REQUIRED ------------------------------------------ Exit code: NOTHING_DONE ------------------------------------------ Building module2 Cleaning output files: out/production/module2/module2.js out/production/module2/module2.meta.js out/production/module2/module2/foo/foo.kjsm End of files Compiling files: module2/src/AChild.kt module2/src/importA.kt End of files Exit code: ABORT ------------------------------------------ COMPILATION FAILED Cannot access 'A': it is private in file 'public' subclass exposes its 'private' supertype A Cannot access 'A': it is private in file ================ Step #2 ================= Building module1 Cleaning output files: out/production/module1/module1.js out/production/module1/module1.meta.js out/production/module1/module1/foo/foo.kjsm End of files Compiling files: module1/src/A.kt End of files Marked as dirty by Kotlin: module2/src/AChild.kt module2/src/importA.kt module3/src/importAChild.kt Exit code: ADDITIONAL_PASS_REQUIRED ------------------------------------------ Exit code: NOTHING_DONE ------------------------------------------ Building module2 Compiling files: module2/src/AChild.kt module2/src/importA.kt End of files Exit code: OK ------------------------------------------ Building module3 Cleaning output files: out/production/module3/module3.js out/production/module3/module3.meta.js End of files Compiling files: module3/src/importAChild.kt End of files Exit code: OK ------------------------------------------