From: Ole Streicher <olebole@debian.org>
Date: Tue, 5 Jul 2016 15:13:46 +0200
Subject: Work around a weird optimization bug in armhf

Without this patch, compilation on armhf fails with

```
/tmp/ccJsRMs3.s: Assembler messages:
/tmp/ccJsRMs3.s:21403: Warning: base register written back, and overlaps one of transfer registers
/tmp/ccJsRMs3.s:28133: Error: registers may not be the same -- `str r3,[r3],#4'
/tmp/ccJsRMs3.s:28971: Warning: base register written back, and overlaps one of transfer registers
```

on gcc-4.9.4. See
https://buildd.debian.org/status/fetch.php?pkg=starlink-ast&arch=armhf&ver=8.0.2%2Bdfsg-1&stamp=1414223014
as example.

The error appears with MAKE_MASK(F, float), while the warnings are
with MAKE_MASK(D, double) and MAKE_MASK(LD, long double).
---
 src/region.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/region.c b/src/region.c
index 5586041..f7edcef 100644
--- a/src/region.c
+++ b/src/region.c
@@ -279,6 +279,7 @@ f     - AST_SHOWMESH: Display a mesh of points on the surface of a Region
 *     they should usually extend astSimplify and astRegCentre.
 
 */
+#pragma GCC optimize ("no-expensive-optimizations")
 
 /* Module Macros. */
 /* ============== */
