A Swift expert may provide a better answer.
+ is the builtin standard infix operator equivalent to infix operator +: AdditionPrecedence which you are overriding by extending CGPoint (vs add which is just a plain old static function and cannot be used as an infix operator between two targets).
https://developer.apple.com/documentation/swift/operator-declarations
You can define your own custom infix operator (with naming restricted to specific characters) like this: (although recommend against this)
infix operator ✜: AdditionPrecedence // heavy open centre cross
extension CGPoint {
static func ✜(lhs: Self, rhs: Self) -> CGPoint {
CGPoint(x: lhs.x + rhs.x, y: lhs.y + rhs.y)
}
}
private func testCGPoint() {
print(CGPoint(x: 2, y: 3) ✜ CGPoint(x: 4, y: 5))
}
https://docs.swift.org/swift-book/LanguageGuide/AdvancedOperators.html#ID46 (Custom Operators)
https://docs.swift.org/swift-book/ReferenceManual/LexicalStructure.html#ID418 (Lexical Structure - Operators)