This question already has an answer here:

I want to deploy a contract via Mist, but the compiler tells me to use the storage keyword: enter image description here

I tried many things including this one:

pragma solidity ^0.4.13;

//listing 1
contract Trace{

struct Tru{
    bool consumed;
    bool used;
    bool created;
    uint id;
    uint producedBy;
    uint consumedBy;

struct PrimitiveActivity{
    bool created;
    string storage name;
    uint id;
    uint inputTruId;
    uint outputTruId;

However this just produces the next compiler error:

Expected identifier, got 'eth_compileSolidity' string storage name; ^

Has anyone an idea how I can resolve this issue? Thx.

marked as duplicate by Badr Bellaj Aug 3 '17 at 11:07

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.


Try using compiler version 4.14 (specifically 0.4.14+commit.c2215d46). The issue about needing the "storage" keyword goes away. You can select the compiler version in Remix on the settings tab.

Not the answer you're looking for? Browse other questions tagged or ask your own question.