Several older compilers fail to build modern GCC because of missing
or incomplete C++11 support.
Signed-off-by: Iain Sandoe <iain@sandoe.co.uk>
PR bootstrap/100246 - [11/12 Regression] GCC will not bootstrap with clang 3.4/3.5 [xcode 5/6, Darwin 12/13]
PR bootstrap/100246
gcc/ChangeLog:
* config/i386/i386.h (struct stringop_algs): Define a CTOR for
this type.
{
const enum stringop_alg unknown_size;
const struct stringop_strategy {
+ /* Several older compilers delete the default constructor because of the
+ const entries (see PR100246). Manually specifying a CTOR works around
+ this issue. Since this header is used by code compiled with the C
+ compiler we must guard the addition. */
+#ifdef __cplusplus
+ stringop_strategy(int _max = -1, enum stringop_alg _alg = libcall,
+ int _noalign = false)
+ : max (_max), alg (_alg), noalign (_noalign) {}
+#endif
const int max;
const enum stringop_alg alg;
int noalign;