Not Declared in Scope

For some reason, my byte variable keeps saying it is not declared in the scope. Does anyone see what's wrong with this?

//BOARD
int clockPinA = 8;
int latchPinA = 12;
int dataPinA = 11;

//set up LED's
byte Test = B1111111111111111;


void setup() {
  // put your setup code here, to run once:
  pinMode(latchPinA, OUTPUT); //sets pins to output - makes them light up
  pinMode(clockPinA, OUTPUT);//pins on d2l
  pinMode(dataPinA, OUTPUT); 
}

////loop that lights up each light one at a time in a row
void loop() {
    digitalWrite(latchPinA, LOW);
    shiftOut(dataPinA, clockPinA, LSBFIRST, Test);
    digitalWrite(latchPinA, HIGH);
}
byte Test = 0b1111111111111111;

The binary macros are only defined for the 8 bit values. If you need to specify a number of more than 8 bits with binary notation, use the 0b syntax as AWOL recommended.

However, you need to think about what you're doing. byte is an 8 bit type. Depending on which board you're compiling for, the 4th parameter of shiftOut() may also be an 8 bit type.

AWOL:

byte Test = 0b1111111111111111;

Is that a 16 bit byte ?