PROGMEM const Fix

I am trying to fix some library’s that broke when writing non “const” vars to PROGMEM depreciated with avr 1.6. I have tried simply changing the offending lines to const, e.g.:

static PROGMEM PFLOAT coeff_inv[10][3];

to

static const PROGMEM PFLOAT coeff_inv[10][3];

But this results in a cascade of errors throughout the library. See attached.

Is there a more elegant solution to this problem?

thermocouple.cpp (11.5 KB)

thermocouple.h (6.26 KB)

const PROGMEM float coeff_inv[10][3];

void setup() 
{
  Serial.begin( 250000 );
  Serial.println( coeff_inv[0][0] );
}

void loop() { }
Sketch uses 1,682 bytes (5%) of program storage space. Maximum is 32,256 bytes.
Global variables use 188 bytes (9%) of dynamic memory, leaving 1,860 bytes for local variables. Maximum is 2,048 bytes.

updated code found

https://github.com/greencardigan/TC4-shield/tree/master/applications/Artisan/aArtisan_PID/branches/aArtisanQ_PID_6/libraries/thermocouple

Thank you for the follow-up.