+2017-09-26 Iain Sandoe <iain@codesourcery.com>
+ Ryan Mounce <ryan@mounce.com.au>
+
+ PR bootstrap/81037
+ Backport from mainline r235362
+ 2016-04-22 Szabolcs Nagy <szabolcs.nagy@arm.com>
+
+ * system.h (list, map, set, vector): Include conditionally.
+ * auto-profile.c (INCLUDE_MAP, INCLUDE_SET): Define.
+ * graphite-isl-ast-to-gimple.c (INCLUDE_MAP): Define.
+ * ipa-icf.c (INCLUDE_LIST): Define.
+ * ipa-icf-gimple.c (INCLUDE_LIST): Define.
+ * config/sh/sh.c (INCLUDE_VECTOR): Define.
+ * config/sh/sh_treg_combine.cc (INCLUDE_ALGORITHM): Define.
+ (INCLUDE_LIST, INCLUDE_VECTOR): Define.
+ * fortran/trans-common.c (INCLUDE_MAP): Define.
+
+ Backport from mainline r235361
+ 2016-04-22 Szabolcs Nagy <szabolcs.nagy@arm.com>
+
+ * auto-profile.c: Remove <string.h> include.
+ * diagnostic.c: Remove <new> include.
+ * genmatch.c: Likewise.
+ * pretty-print.c: Likewise.
+ * toplev.c: Likewise
+ * c/c-objc-common.c: Likewise.
+ * cp/error.c: Likewise.
+ * fortran/error.c: Likewise.
+
2017-09-22 Alexander Monakov <amonakov@ispras.ru>
PR tree-optimization/71702
<http://www.gnu.org/licenses/>. */
#include "config.h"
+#define INCLUDE_MAP
+#define INCLUDE_SET
#include "system.h"
-#include <string.h>
-#include <map>
-#include <set>
-
#include "coretypes.h"
#include "hash-set.h"
#include "machmode.h"
#include "langhooks.h"
#include "c-objc-common.h"
-#include <new> // For placement new.
-
static bool c_tree_printer (pretty_printer *, text_info *, const char *,
int, bool, bool, bool);
<http://www.gnu.org/licenses/>. */
#include <sstream>
-#include <vector>
#include "config.h"
+#define INCLUDE_VECTOR
#include "system.h"
#include "coretypes.h"
#include "tm.h"
<http://www.gnu.org/licenses/>. */
#include "config.h"
+#define INCLUDE_ALGORITHM
+#define INCLUDE_LIST
+#define INCLUDE_VECTOR
#include "system.h"
#include "coretypes.h"
#include "machmode.h"
#include "stmt.h"
#include "expr.h"
-#include <algorithm>
-#include <list>
-#include <vector>
-
/*
This pass tries to optimize for example this:
mov.l @(4,r4),r1
#include "ubsan.h"
#include "internal-fn.h"
-#include <new> // For placement-new.
-
#define pp_separate_with_comma(PP) pp_cxx_separate_with (PP, ',')
#define pp_separate_with_semicolon(PP) pp_cxx_separate_with (PP, ';')
# include <sys/ioctl.h>
#endif
-#include <new> // For placement new.
-
#define pedantic_warning_kind(DC) \
((DC)->pedantic_errors ? DK_ERROR : DK_WARNING)
#define permissive_error_kind(DC) ((DC)->permissive ? DK_WARNING : DK_ERROR)
#include "diagnostic-color.h"
#include "tree-diagnostic.h" /* tree_diagnostics_defaults */
-#include <new> /* For placement-new */
-
static int suppress_errors = 0;
static bool warnings_not_errors = false;
is examined for still-unused equivalence conditions. We create a
block for each merged equivalence list. */
-#include <map>
#include "config.h"
+#define INCLUDE_MAP
#include "system.h"
#include "coretypes.h"
#include "tm.h"
<http://www.gnu.org/licenses/>. */
#include "bconfig.h"
-#include <new>
#include "system.h"
#include "coretypes.h"
#include "ggc.h"
#endif
#endif
+#define INCLUDE_MAP
#include "system.h"
#include "coretypes.h"
#include "hash-set.h"
#include "tree-scalar-evolution.h"
#include "gimple-ssa.h"
#include "tree-into-ssa.h"
-#include <map>
#ifdef HAVE_isl
#include "graphite-poly.h"
<http://www.gnu.org/licenses/>. */
#include "config.h"
+#define INCLUDE_LIST
#include "system.h"
#include "coretypes.h"
#include "hash-set.h"
#include "cgraph.h"
#include "data-streamer.h"
#include "ipa-utils.h"
-#include <list>
#include "tree-ssanames.h"
#include "tree-eh.h"
#include "builtins.h"
*/
#include "config.h"
+#define INCLUDE_LIST
#include "system.h"
-#include <list>
#include "coretypes.h"
#include "hash-set.h"
#include "machmode.h"
#include "pretty-print.h"
#include "diagnostic-color.h"
-#include <new> // For placement-new.
-
#if HAVE_ICONV
#include <iconv.h>
#endif
#endif
#ifdef __cplusplus
+# ifdef INCLUDE_LIST
+# include <list>
+# endif
+# ifdef INCLUDE_MAP
+# include <map>
+# endif
+# ifdef INCLUDE_SET
+# include <set>
+# endif
+# ifdef INCLUDE_VECTOR
+# include <vector>
+# endif
# include <algorithm>
# include <cstring>
# include <utility>
#define HAVE_prologue 0
#endif
-#include <new>
-
static void general_init (const char *, bool);
static void do_compile ();
static void process_options (void);