PR target/44643
* config/avr/avr.c (avr_insert_attributes): Use TYPE_READONLY
instead of TREE_READONLY.
From-SVN: r175809
+2011-07-04 Georg-Johann Lay <avr@gjlay.de>
+
+ PR target/44643
+ * config/avr/avr.c (avr_insert_attributes): Use TYPE_READONLY
+ instead of TREE_READONLY.
+
2011-07-04 Georg-Johann Lay <avr@gjlay.de>
* doc/extend.texi (AVR Built-in Functions): Update documentation
&& (TREE_STATIC (node) || DECL_EXTERNAL (node))
&& avr_progmem_p (node, *attributes))
{
- if (TREE_READONLY (node))
+ tree node0 = node;
+
+ /* For C++, we have to peel arrays in order to get correct
+ determination of readonlyness. */
+
+ do
+ node0 = TREE_TYPE (node0);
+ while (TREE_CODE (node0) == ARRAY_TYPE);
+
+ if (error_mark_node == node0)
+ return;
+
+ if (TYPE_READONLY (node0))
{
static const char dsec[] = ".progmem.data";