]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
gengtype.c (file_rules): Added rule for *.cc files.
authorBasile Starynkevitch <basile@starynkevitch.net>
Fri, 20 Sep 2013 15:50:56 +0000 (15:50 +0000)
committerBasile Starynkevitch <bstarynk@gcc.gnu.org>
Fri, 20 Sep 2013 15:50:56 +0000 (15:50 +0000)
2013-09-20  Basile Starynkevitch  <basile@starynkevitch.net>

       * gengtype.c (file_rules): Added rule for *.cc files.
       (get_output_file_with_visibility): Give fatal message when no
       rules found.

From-SVN: r202782

gcc/ChangeLog
gcc/gengtype.c

index 68a0f2eb51d094d732da8b314c586f678c800805..70ae7f207d699c92c7c379d50e809af5ab003e4d 100644 (file)
@@ -1,3 +1,9 @@
+2013-09-20  Basile Starynkevitch  <basile@starynkevitch.net>
+
+       * gengtype.c (file_rules): Added rule for *.cc files.
+       (get_output_file_with_visibility): Give fatal message when no
+       rules found.
+
 2013-09-20  Renlin Li  <renlin.li@arm.com>
 
        * config/aarch64/aarch64.c (aarch64_expand_prologue): Use plus_constant.
index c3dffe8dd9639c358037cbe696b5a32a759fb21a..ce60c788012406104fb1615bb419bcd22b334158 100644 (file)
@@ -2004,14 +2004,21 @@ struct file_rule_st files_rules[] = {
     REG_EXTENDED, NULL_REGEX,
     "gt-objc-objc-map.h", "objc/objc-map.c", NULL_FRULACT },
 
-  /* General cases.  For header *.h and source *.c files, we need
-   * special actions to handle the language.  */
+  /* General cases.  For header *.h and source *.c or *.cc files, we
+   * need special actions to handle the language.  */
 
   /* Source *.c files are using get_file_gtfilename to compute their
      output_name and get_file_basename to compute their for_name
      through the source_dot_c_frul action.  */
   { DIR_PREFIX_REGEX "([[:alnum:]_-]*)\\.c$",
     REG_EXTENDED, NULL_REGEX, "gt-$3.h", "$3.c", source_dot_c_frul},
+
+  /* Source *.cc files are using get_file_gtfilename to compute their
+     output_name and get_file_basename to compute their for_name
+     through the source_dot_c_frul action.  */
+  { DIR_PREFIX_REGEX "([[:alnum:]_-]*)\\.cc$",
+    REG_EXTENDED, NULL_REGEX, "gt-$3.h", "$3.cc", source_dot_c_frul},
+
   /* Common header files get "gtype-desc.c" as their output_name,
    * while language specific header files are handled specially.  So
    * we need the header_dot_h_frul action.  */
@@ -2269,9 +2276,9 @@ get_output_file_with_visibility (input_file *inpf)
   }
   if (!output_name || !for_name)
     {
-      /* This is impossible, and could only happen if the files_rules is
-        incomplete or buggy.  */
-      gcc_unreachable ();
+      /* This should not be possible, and could only happen if the
+        files_rules is incomplete or buggy.  */
+      fatal ("failed to compute output name for %s", inpfname);
     }
 
   /* Look through to see if we've ever seen this output filename