preprocessor: cleanups in c-common handling
authorNathan Sidwell <nathan@acm.org>
Wed, 20 May 2020 18:15:34 +0000 (11:15 -0700)
committerNathan Sidwell <nathan@acm.org>
Wed, 20 May 2020 18:17:52 +0000 (11:17 -0700)
* c-common.c (try_to_locate_new_include_insertion_point): Use
strcmp to compare filenames.
* c-lex.c (init_c_lex): Move declaration to initialization.
* c-opts.c (handle_deferred_opts): Move cpp_get_deps call into
deferred count loop.

gcc/c-family/ChangeLog
gcc/c-family/c-common.c
gcc/c-family/c-lex.c
gcc/c-family/c-opts.c

index da4be414b6cbc37083390f0790cbd7c50010adaf..90f022c76228ea3f073857b36d7d9cb29515a583 100644 (file)
@@ -1,3 +1,11 @@
+2020-05-20  Nathan Sidwell  <nathan@acm.org>
+
+       * c-common.c (try_to_locate_new_include_insertion_point): Use
+       strcmp to compare filenames.
+       * c-lex.c (init_c_lex): Move declaration to initialization.
+       * c-opts.c (handle_deferred_opts): Move cpp_get_deps call into
+       deferred count loop.
+
 2020-05-15  Jason Merrill  <jason@redhat.com>
 
        * c-opts.c (set_std_cxx20): Set flag_coroutines.
index b1379faa412e3646a443969c0067f5c4fb23e107..10c0353fe4e4c72b023021585d36f161ae77161c 100644 (file)
@@ -8708,7 +8708,8 @@ try_to_locate_new_include_insertion_point (const char *file, location_t loc)
            last_ord_map_after_include = NULL;
          }
 
-      if (ord_map->to_file == file)
+      if (0 == strcmp (ord_map->to_file, file)
+         && ord_map->to_line)
        {
          if (!first_ord_map_in_file)
            first_ord_map_in_file = ord_map;
index f0fa9683b0a9f72aa6a2feaf28cffccfbf3e9fe8..b1cef2345f491a600eaae4173b05b49e5bdf954b 100644 (file)
@@ -60,7 +60,6 @@ static void cb_undef (cpp_reader *, unsigned int, cpp_hashnode *);
 void
 init_c_lex (void)
 {
-  struct cpp_callbacks *cb;
   struct c_fileinfo *toplevel;
 
   /* The get_fileinfo data structure must be initialized before
@@ -73,7 +72,7 @@ init_c_lex (void)
       toplevel->time = body_time;
     }
 
-  cb = cpp_get_callbacks (parse_in);
+  struct cpp_callbacks *cb = cpp_get_callbacks (parse_in);
 
   cb->line_change = cb_line_change;
   cb->ident = cb_ident;
index 7695e88c13015a57fa806a68b1b9634dac178fb1..8a5131b8ac6f3d16b994707214f7958e96c6a27a 100644 (file)
@@ -1317,15 +1317,14 @@ handle_deferred_opts (void)
   if (!deps_seen)
     return;
 
-  mkdeps *deps = cpp_get_deps (parse_in);
-
-  for (size_t i = 0; i < deferred_count; i++)
-    {
-      struct deferred_opt *opt = &deferred_opts[i];
+  if (mkdeps *deps = cpp_get_deps (parse_in))
+    for (unsigned i = 0; i < deferred_count; i++)
+      {
+       struct deferred_opt *opt = &deferred_opts[i];
 
-      if (opt->code == OPT_MT || opt->code == OPT_MQ)
-       deps_add_target (deps, opt->arg, opt->code == OPT_MQ);
-    }
+       if (opt->code == OPT_MT || opt->code == OPT_MQ)
+         deps_add_target (deps, opt->arg, opt->code == OPT_MQ);
+      }
 }
 
 /* These settings are appropriate for GCC, but not necessarily so for