ethereum/mix

cannot write dynamic bytesx[] array

Closed this issue · 2 comments

struct Contractor
{
    address owner;
    uint deposit;
    address contractAddress;
    bytes8 drawData; //byte0=FF, means no data
    bool safed; // data is voted safe,after the deadline
    uint beginTime;
    uint endTime;
    uint deadline; //referees must inject data before it
    uint8 requestRefereeNumber; //3-Max, minimize is 3 referees;
    uint firstCreateTime; //first generate this contract
    uint updateTime; //when update this contract;
    Contractor_State state; //contractor's state: running;waiting-update;updated;
    bytes reviewProfessorIds; //{01 04} {02 08} means id=01 ,con but id=2 pro.
    bytes8[] refereeDrawDatas; //every referee write its drawData here order by refereeIds. bytes8 array cannot be written
    uint8[8] refereeIds; //bytes->swap error; byte[8]->store wrong position     
}

c.refereeDrawDatas[1] = 0x010203; // didn't change

but change bytes8[] refereeDrawDatas to bytes8[6] refereeDrawDatas, set value to the array OK.

Mix test use case:
https://github.com/btc2nxt/p2pWorld/tree/master/Mix-tests/VAC-bytes%20error

Really sorry but mix has been discontinued.
We are now focusing on remix ( https://github.com/ethereum/remix ) which will i hope soon provide the same level of functionality as mix. Remix is in the early stage (alpha version). it only provides VM debugging for now.
Remix has already been integrated with browser solidity ( https://ethereum.github.io/browser-solidity/#version=soljson-latest.js ). You can use it right now.
But as remix is still alpha, i would not recommend to use it as a production tool. please wait for further announcements.
Thanks and i hope you will enjoy playing with remix!
Feel free to join the gitter channel https://gitter.im/ethereum/remix and share your thoughts with us.

it might be linked to solidity. I've created the same issue there
https://github.com/ethereum/remix/issues/82
so we can check it out.