Paul Krill
Editor at Large

Apple’s Xcode 16 adds AI-powered code completion

news
Jun 12, 20242 mins
Artificial IntelligenceDevelopment ToolsGenerative AI

Swift 6 also gets accommodations in the update to the Apple platform IDE, now in beta.

ChatGPT R, robotic hand typing on keyboard
Credit: Andrey_Popov/Shutterstock

Apple has released a beta version of Xcode 16, an update to the integrated development environment (IDE) for Apple platforms that features AI-powered predictive code completion. Accommodations for the Swift language and the planned Swift 6 language release also are highlighted.

The Xcode 16 beta was made available June 10 on the Apple Developer website. Predictive code completion is powered by a machine learning model specifically trained for Swift and Apple SDKs, according to release notes.

For the Swift language, the build system coordinates with Clang and Swift compilers to discover and build module dependencies of project sources as a set of explicit tasks in the build log. Explicitly built modules improve debugger performance and let the build system make better scheduling decisions to maximize parallelism.

Also, a Swift 6 language mode opens existential values with “self-conforming” types (such as any Error or @objc protocols) passed to generic functions. The SWIFT_VERSION build setting now allows building with the Swift 6 language mode. Projects can migrate to Swift 6 by opting into features individually using new build settings under Swift Compiler – Upcoming Features.

The Xcode 16 beta includes SDKs for iOS 18, macOS Sequoia 15, iPadOS 18, tvOS 18, watchOS 11, and visionOS 2.

Other new features and improvements in Xcode 16:

  • The copy and paste capability from the build settings editor now uses the xconfig file syntax. Additionally, the Project Navigator’s “Open As” context menu now supports choosing default editors per file type.
  • Developers can turn on the C++ Standard Library hardening in Build Settings. Turning on hardening enables checks for common cases of misuse of the standard library APIs.
  • The debug bar now provides a control to view the current backtrace to the source editor, unified with contextual relevant source code for each frame in the source editor.
  • A new execution engine for Previews supports a large range of projects and configurations.
  • Several new streamlined file creation workflows are introduced.
  • Quick Actions adds support for semantic search, providing results that match the intent of a query without having to exactly match the text.