Flash library weirdness?

Your comment about where x2 is defined got me thinking. What would matter about the location? Time.

This works:

#include <Flash.h>

FLASH_ARRAY(int, arrayData, 5 , 9);

void setup() {
  Serial.begin(9600);
  int x1 = arrayData[0];
  delay(100);
  int x2 = arrayData[1];

  Serial.println();
  Serial.print(x1);
  Serial.print(" , ");
  Serial.println(x2);
}

void loop() {
}

I don't understand why the delay is necessary, though.