Hi,

any idea why the code below causes an error message from pcc? I'm trying
to port flashrom to Plan 9, but I've been fighting the compiler for the
last few hours.
/usr/glenda/flashrom/test3.c:20[stdin:45] constructor must be a structure
/usr/glenda/flashrom/test3.c:25[stdin:50] constructor must be a structure

Regards,
Carl-Daniel

#include <stddef.h>

#define JEDEC_WREN              0x06
#define JEDEC_WREN_OUTSIZE      0x01
#define JEDEC_CE_C7             0xc7
#define JEDEC_CE_C7_OUTSIZE     0x01

struct spi_command {
        unsigned int writecnt;
        unsigned int readcnt;
        const unsigned char *writearr;
        unsigned char *readarr;
};

void spi_chip_erase_c7(void)
{
        struct spi_command cmds[] = {
        {
                .writecnt       = JEDEC_WREN_OUTSIZE,
                .writearr       = (const unsigned char[]){ JEDEC_WREN },
                .readcnt        = 0,
                .readarr        = NULL,
        }, {
                .writecnt       = JEDEC_CE_C7_OUTSIZE,
                .writearr       = (const unsigned char[]){ JEDEC_CE_C7 },
                .readcnt        = 0,
                .readarr        = NULL,
        }, {
                .writecnt       = 0,
                .writearr       = NULL,
                .readcnt        = 0,
                .readarr        = NULL,
        }};
}



Reply via email to