c-parse.in (if_stmt_locus): New object.
authorGabriel Dos Reis <gdr@integrable-solutions.net>
Fri, 9 May 2003 09:25:34 +0000 (09:25 +0000)
committerGabriel Dos Reis <gdr@gcc.gnu.org>
Fri, 9 May 2003 09:25:34 +0000 (09:25 +0000)
* c-parse.in (if_stmt_locus): New object.
(if_prefix rule): Use it.  Don't use warning_with_file_and_line.
(select_or_iter_stmt rule): Likewise.
(if_stmt_file): Remove.
(if_stmt_line): Likewise.
* jump.c: include "diagnostic.h"
(never_reached_warning): Don't use warning_with_file_and_line.
* Makefile.in (jump.o): Add dependce on diagnostic.h

From-SVN: r66627

gcc/ChangeLog
gcc/Makefile.in
gcc/c-parse.in
gcc/jump.c

index f56f19bb5c450d3a77c915dd55b7efd14191dd0d..4478a942c70a9b648d69896928d2d9781620a57a 100644 (file)
@@ -1,3 +1,14 @@
+2003-05-09  Gabriel Dos Reis <gdr@integrable-solutions.net>
+
+       * c-parse.in (if_stmt_locus): New object.
+       (if_prefix rule): Use it.  Don't use warning_with_file_and_line.
+       (select_or_iter_stmt rule): Likewise.
+       (if_stmt_file): Remove.
+       (if_stmt_line): Likewise.
+       * jump.c: include "diagnostic.h"
+       (never_reached_warning): Don't use warning_with_file_and_line. 
+       * Makefile.in (jump.o): Add dependce on diagnostic.h
+
 2003-05-09  Alan Modra  <amodra@bigpond.net.au>
 
        * expr.c (move_block_from_reg): Remove "size" parm.  Localize vars.
index 563649b021f53c6917d575ebe9d15ee5b8520a76..f4c9a92e3e292c330008d03db308eac7d2286915 100644 (file)
@@ -1578,7 +1578,8 @@ integrate.o : integrate.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) $
    $(PARAMS_H) $(TM_P_H) $(TARGET_H) langhooks.h gt-integrate.h
 jump.o : jump.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) flags.h \
    hard-reg-set.h $(REGS_H) insn-config.h $(RECOG_H) $(EXPR_H) real.h except.h function.h \
-   toplev.h $(INSN_ATTR_H) $(TM_P_H) reload.h $(PREDICT_H) $(TIMEVAR_H)
+   toplev.h $(INSN_ATTR_H) $(TM_P_H) reload.h $(PREDICT_H) $(TIMEVAR_H) \
+   diagnostic.h
 
 simplify-rtx.o : simplify-rtx.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(RTL_H) \
    $(REGS_H) hard-reg-set.h flags.h real.h insn-config.h $(RECOG_H) $(EXPR_H) toplev.h \
index 807f90a9048918dd5383420e0ccffa3d42e6e061..f9d3656662daa9e0ca10cb1c77bdb24841c21cc0 100644 (file)
@@ -261,10 +261,10 @@ end ifobjc
 static int stmt_count;
 static int compstmt_count;
 
-/* Input file and line number of the end of the body of last simple_if;
+/* Input location of the end of the body of last simple_if;
    used by the stmt-rule immediately after simple_if returns.  */
-static const char *if_stmt_file;
-static int if_stmt_line;
+static location_t if_stmt_locus;
+
 
 /* List of types and structure classes of the current declaration.  */
 static GTY(()) tree current_declspecs;
@@ -2215,8 +2215,8 @@ if_prefix:
                { c_expand_start_cond (c_common_truthvalue_conversion ($4),
                                       compstmt_count,$<ttype>2);
                  $<itype>$ = stmt_count;
-                 if_stmt_file = $<filename>-2;
-                 if_stmt_line = $<lineno>-1; }
+                 if_stmt_locus.file = $<filename>-2;
+                 if_stmt_locus.line = $<lineno>-1; }
         ;
 
 /* This is a subroutine of stmt.
@@ -2305,8 +2305,8 @@ select_or_iter_stmt:
                     else statement.  Increment stmt_count so we don't
                     give a second error if this is a nested `if'.  */
                  if (extra_warnings && stmt_count++ == $<itype>1)
-                   warning_with_file_and_line (if_stmt_file, if_stmt_line,
-                                               "empty body in an if-statement"); }
+                   warning ("%Hempty body in an if-statement",
+                             &if_stmt_locus); }
 /* Make sure c_expand_end_cond is run once
    for each call to c_expand_start_cond.
    Otherwise a crash is likely.  */
index 5bed408fb5ca1de76e56513bf81b7198111ed004..4cb9bcb1f6f8b7653ea07ea62d0e38edea3b7150 100644 (file)
@@ -54,6 +54,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
 #include "reload.h"
 #include "predict.h"
 #include "timevar.h"
+#include "diagnostic.h"
 
 /* Optimize jump y; x: ... y: jumpif... x?
    Don't know if it is worth bothering with.  */
@@ -1951,9 +1952,12 @@ never_reached_warning (avoided_insn, finish)
        reached_end = 1;
     }
   if (two_avoided_lines && contains_insn)
-    warning_with_file_and_line (NOTE_SOURCE_FILE (a_line_note),
-                               NOTE_LINE_NUMBER (a_line_note),
-                               "will never be executed");
+    {
+      location_t locus;
+      locus.file = NOTE_SOURCE_FILE (a_line_note);
+      locus.line = NOTE_LINE_NUMBER (a_line_note);
+      warning ("%Hwill never be executed", &locus);
+    }
 }
 \f
 /* Throughout LOC, redirect OLABEL to NLABEL.  Treat null OLABEL or