[swift-users] Ambiguous error for setting a value in a CChar array

Dmitri Gribenko gribozavr at gmail.com
Thu Mar 3 22:46:11 CST 2016

On Thu, Mar 3, 2016 at 7:54 PM, Adam Campbell via swift-users
<swift-users at swift.org> wrote:
> Discovered this when trying to answer a stackoverflow question about setting
> character values in a CCString array.
> The following code produces an ambiguous error:
> var buff = [CChar](count: 5, repeatedValue: 0)
> buff[0] = "A".utf8.first!.value // Error - Cannot assign value of type
> 'Int8' to type 'CChar' (aka 'Int8')
> I can easily get around this by changing the second line to:
> buff[0].value = "A".utf8.first!.value
> Can someone explain what is happening here? As well as the significance of
> Int8.value?

The 'var value' property used to be a property of type Builtin.Int8,
which maps directly to LLVM's i8.  This is a part of the integers
implementation, and it was renamed to 'var _value' a while ago.
Please don't use this property.  The code that you posted (that
accesses '.value') does not compile anymore.


(j){printf("%d\n",i);}}} /*Dmitri Gribenko <gribozavr at gmail.com>*/

More information about the swift-users mailing list