I had a program working on 2.6.0 which fails on updating to 2.8.0. (PIC14)
There is not a specific error message, but the compiler aborts with:
sdcc: /home/sdcc-builder/build/sdcc-build/orig/sdcc/src/pic/glue.c:1956:
emitInitVal: Assertion `!"Initialized char-arrays are not yet supported,
assign at runtime instead."' failed.
Caught signal 6: SIGABRT
I assume this is due to an initialized array of strings, or initialized
arays of bytes contained in the program:
// List of messages
const char menuText[13][9] = {
" ",
" Step",
" Keyer",
" Power",
" Back",
" 1",
" 10",
" 100",
" Speed",
" Weight",
" Up",
" Down",
"Procssng"
};
// Message to display for each state:
// -- Index = state number
// -- Contents = message number
const byte stateMsg[30] = {
0,1,2,3,4,5,6,7,4,8,9,4,10,11,4,10,11,4,10,11,4,12,12,12,12,12,12,12,12,12
};
etc. etc .. more of the same
These worked in 2.6.0, so the "not yet supported" comment doesn't seem
particularly accurate. Since this is the PIC14 target, the "assign at
runtime" isn't especially helpful, since that would require putting a lot of
data into RAM, and there just ain't much RAM on any PIC14.
I couldn't find any indication in the docs as to why this would suddenly
fail. Why remove woring functionality, especially functionality so critical
(at least in the 8 bit PICs).
Should I back off to 2.7, or do I need to go all the way back to 2.6?
--McD
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Sdcc-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/sdcc-user