On Fri, Apr 15, 2016 at 10:34 AM, Chris Lattner <clatt...@apple.com> wrote:
>
>> On Apr 14, 2016, at 11:22 PM, Dmitri Gribenko <griboz...@gmail.com> wrote:
>>
>> On Thu, Apr 14, 2016 at 11:16 PM, Chris Lattner via swift-users
>> <swift-users@swift.org> wrote:
>>>
>>>> On Apr 14, 2016, at 10:45 AM, soyer via swift-users 
>>>> <swift-users@swift.org> wrote:
>>>>
>>>> Hello Guys, Girls,
>>>>
>>>> Do you know why is the init?(length length: Int) NSMutableData's 
>>>> initializer failable?
>>>> The memory allocation can fail, but I think Swift doesn't handle that 
>>>> cases. (it is not a real issue in a modern OS)
>>>> The code on github calls a non failable initializer.
>>>> https://github.com/apple/swift-corelibs-foundation/blob/master/Foundation/NSData.swift#L904
>>>
>>> Swift’s policy on memory allocation failure is that fixed-size object 
>>> allocation is considered to be a runtime failure if it cannot be handled.  
>>> OTOH, APIs that can take a variable and arbitrarily large amount to 
>>> allocate should be failable.  NSData falls into the later category.
>>
>> Does this principle apply to Array(repeating:count:)?
>> Array.append(contentsOf:)?
>
> As you know well enough, “no”. :-)

Why?  These APIs also "take a variable and arbitrarily large amount to
allocate".

Dmitri

-- 
main(i,j){for(i=2;;i++){for(j=2;j<i;j++){if(!(i%j)){j=0;break;}}if
(j){printf("%d\n",i);}}} /*Dmitri Gribenko <griboz...@gmail.com>*/
_______________________________________________
swift-users mailing list
swift-users@swift.org
https://lists.swift.org/mailman/listinfo/swift-users

Reply via email to