Bitshifting bytes to form a long var fails!

psyche:
I tried that too but it didn't work! I also updated to 1.0.1 but still no luck.

Can you please post what you tried, and what you got. Saying I "tried that" and it "didn't work" is very non-specific.

My code here:

void setup ()
{
  Serial.begin (115200);
}

void loop ()
{
  long address;
  
  byte a = 0x0F;
  byte b = 0x0E;
  byte c = 0x0C;
  byte d = 0x0D;
  byte e = 0x0A;
  
  address = long (a) << 16 | long (b) << 12 | c << 8 | d << 4 | e;
  
  Serial.println (address, HEX);
  
  while (1);
}

Works. Output:

FECDA

So I can't really believe you tried it and it didn't work.