- o There is a bug in gcc 2.7.[012] in the handling of const which can
- cause various unpredictable problems. If you experience weird
- crashes with a LyX compiled by gcc 2.7.[012], try to configure
- with the --with-broken-const flag and recompile. If this improves
- things, please report it to the mailing list. Note that this
- compiler bug is fixed in gcc 2.7.2.1 and in several Linux
- distributions of gcc 2.7.[012].
-
- This bug is currently not autodetected, but any code to do so
- would be welcome. A patch for gcc 2.7.2 is as follows:
-
-*** clean-ss-951203/expr.c Sun Nov 26 08:18:07 1995
---- ss-951203/expr.c Mon Dec 4 11:41:18 1995
-*************** expand_expr (exp, target, tmode, modifie
-*** 4582,4587 ****
- through a pointer to const does not mean that the value there can
- never change. Languages where it can never change should
- also set TREE_STATIC. */
-! RTX_UNCHANGING_P (temp) = TREE_READONLY (exp) | TREE_STATIC (exp);
- return temp;
- }
---- 4582,4588 ----
- through a pointer to const does not mean that the value there can
- never change. Languages where it can never change should
- also set TREE_STATIC. */
-! RTX_UNCHANGING_P (temp) = TREE_READONLY (exp) & TREE_STATIC (exp);
- return temp;
- }
-