Using TI compiler v4.4.2 for MSP430 the following declaration causes the string "current_directory to be placed in flash rather than RAM:
void open_file(FATFS *my_fs, DIR *dir_struct, FIL *filp)
{
uint32_t temp_time;
static uint32_t file_time;
static char current_directory[9];
struct tm *ltime;
char dir_name[9];
char filename[22]; // 8 chars + . + 3 + \ + dir_name + NUL
This did not happen in earlier versions of the compiler, 4.3.x I believe. BTW, the other arrays are located properly.
How do I fix this?