> writearr should point to a one-member const unsigned char array, and the
> zeroth element of that array has the value JEDEC_WREN.
=
it's not clear to me that c99 allows one to declare an unnamed array
and assign a pointer to it in this way except if the array is a char* or
wchar_t*.
i think the cleanest approach to solving your problem is
to define writeattr as an array, not a uchar*.
- erik
----
8c -FVTw cdha.c
8l -o 8.cdha cdha.8
#include <u.h>
#include <libc.h>
enum{
Jwren = 0x06,
};
typedef struct Spicmd Spicmd;
struct Spicmd{
uchar writearr[5];
};
void
main(void)
{
Spicmd cmds[] = {
{
.writearr = {Jwren, },
},
};
print("writearr=%p\n", cmds[0].writearr);
print("writearr[0]=%#.2hhx\n", cmds[0].writearr[0]);
exits("");
}