Build never ends if `-O` or `-Owholemodule` in Xcode 9
Originator: | kishikawakatsumi | ||
Number: | rdar://34597258 | Date Originated: | September 23 2017 |
Status: | Open | Resolved: | |
Product: | Xcode | Product Version: | Version 9.0 (9A235) |
Classification: | Reproducible: | Always |
Summary: Steps to Reproduce: 1. Create a new Swift project. 2. Set `SWIFT_OPTIMIZATION_LEVEL = -O` in build setting or select Release build configuration in schema 3. Add a new file and paste the following code public class A { public class func f() { B.f() } } class B { private class C { var this: C? = nil lazy var number: Int = { var local: C? = self let count = 0 while let temp = local?.this { local = temp } return count }() func f() -> C { if number == 0 { return self } print(number) return self } } class func f() { let _ = C().f() } } 4. Build Expected Results: Build finishes Actual Results: Build never ends, swift process CPU usage reaches 100% Version/Build: Xcode Version 9.0 (9A235) macOS Sierra 10.12.6 Configuration:
Comments
Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!