[swift-dev] NSXMLNode.swift: error: integer literal overflows when stored into Int

Philippe Hausler phausler at apple.com
Sun Sep 18 17:46:01 CDT 2016


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 <mgottesman at apple.com> wrote:
> 
> 
>> On Sep 16, 2016, at 4:37 PM, Eric Wing via swift-dev <swift-dev at 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 at swift.org
>> https://lists.swift.org/mailman/listinfo/swift-dev
> 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-dev/attachments/20160918/9096f6a5/attachment.html>


More information about the swift-dev mailing list