was an array. It should go into RODATA, not DATA.
git-svn-id: svn://svn.cc65.org/cc65/trunk@4669
b7a2c559-68d2-44c3-8de9-
860c34a00d81
/* Static data */
if (CurTok.Tok == TOK_ASSIGN) {
/* Static data */
if (CurTok.Tok == TOK_ASSIGN) {
- /* Initialization ahead, switch to data segment and define a label */
- if (IsQualConst (Decl->Type)) {
+ /* Initialization ahead, switch to data segment and define a label.
+ * For arrays, we need to check the elements of the array for
+ * constness, not the array itself.
+ */
+ if (IsQualConst (Decl->Type) ||
+ (IsTypeArray (Decl->Type) && IsQualConst (GetElementType (Decl->Type)))) {
SymData = AllocLabel (g_userodata);
} else {
SymData = AllocLabel (g_usedata);
SymData = AllocLabel (g_userodata);
} else {
SymData = AllocLabel (g_usedata);