struct buyer {
    uint amount;
    Status status;
}
mapping(address=>buyer) public buyers;
mapping(uint=>address) buyerIndex;
uint public buyerNum;
// Order a product.
function() {
    uint doubleValue=value*2;
    uint amount=msg.value/doubleValue;
    if(buyers[msg.sender]==null) { // Error in this line
        buyer abuyer=buyer({amount:amount,status:Status.Created}); // Error in this line
        buyerNum++;
        buyerIndex[buyerNum]=msg.sender;
        buyers[msg.sender]=abuyer;
    }
    else {
        buyers[msg.sender].amount+=amount;
    }
    Order(msg.sender,amount*doubleValue,amount);
}
If a buyer is not recorded in the buyer mapping, then buyerNum++; but I don't know how to tell whether a buyer is in the mapping
 
     
     
     
     
     
     
    