The reason for no issue on iOS 32 bit or watchOS is because the value is calculated via NSUInteger which does not overflow at the sign bits like Int. TBH I think the right way to solve this constant is to just emit the raw value directly instead of attempting to emulate c with bitwise or.
Sent from my iPhone > On Sep 18, 2016, at 2:27 PM, Michael Gottesman <mgottes...@apple.com> wrote: > > >> On Sep 16, 2016, at 4:37 PM, Eric Wing via swift-dev <swift-dev@swift.org> >> wrote: >> >> I'm trying to build Swift 3 for Raspberry Pi 2/armv7. >> >> I'm currently hitting a compile error at: >> >> Foundation/NSXMLNode.swift:86:351: error: integer literal '4293918720' >> overflows when stored into 'Int'. >> >> public static let nodePreserveAll = Options(rawValue: >> Options([.nodePreserveNamespaceOrder, .nodePreserveAttributeOrder, >> .nodePreserveEntities, .nodePreservePrefixes, .nodePreserveCDATA, >> .nodePreserveEmptyElements, .nodePreserveQuotes, >> .nodePreserveWhitespace, .nodePreserveDTD, >> .nodePreserveCharacterReferences]).rawValue | UInt(bitPattern: >> 0xFFF00000)) >> >> >> I'm assuming this is probably related to the fact that the Pi2 (armv7) >> is 32-bit, though I'm surprised this isn't already seen on iOS 32-bit. >> What is the appropriate fix? > > +CC Tony/Phillipe. > >> >> Thanks, >> Eric >> _______________________________________________ >> swift-dev mailing list >> swift-dev@swift.org >> https://lists.swift.org/mailman/listinfo/swift-dev >
_______________________________________________ swift-dev mailing list swift-dev@swift.org https://lists.swift.org/mailman/listinfo/swift-dev