diagnostic.h (output_buffer_state): New macro.
* diagnostic.h (output_buffer_state): New macro. * diagnostic.c (diagnostic_for_decl, sorry, default_print_error_function, output_do_verbatim, report_diagnostic, report_problematic_module): Use it. (wrap_text): Tweak. (output_format): Use wrap_text instead of maybe_wrap_text. From-SVN: r35891
This commit is contained in:
parent
888e552fda
commit
f6a542dece
|
@ -1,3 +1,12 @@
|
|||
2000-08-22 Gabriel Dos Reis <gdr@codesourcery.com>
|
||||
|
||||
* diagnostic.h (output_buffer_state): New macro.
|
||||
* diagnostic.c (diagnostic_for_decl, sorry,
|
||||
default_print_error_function, output_do_verbatim,
|
||||
report_diagnostic, report_problematic_module): Use it.
|
||||
(wrap_text): Tweak.
|
||||
(output_format): Use wrap_text instead of maybe_wrap_text.
|
||||
|
||||
2000-08-22 Nick Clifton <nickc@redhat.com>
|
||||
|
||||
* config/arm/lib1funcs.asm (ARM_DIV_MOD_BODY): New macro.
|
||||
|
|
|
@ -550,6 +550,8 @@ wrap_text (buffer, start, end)
|
|||
const char *start;
|
||||
const char *end;
|
||||
{
|
||||
int is_wrapping = output_is_line_wrapping (buffer);
|
||||
|
||||
while (start != end)
|
||||
{
|
||||
/* Dump anything bodered by whitespaces. */
|
||||
|
@ -557,7 +559,7 @@ wrap_text (buffer, start, end)
|
|||
const char *p = start;
|
||||
while (p != end && *p != ' ' && *p != '\n')
|
||||
++p;
|
||||
if (p - start >= output_space_left (buffer))
|
||||
if (is_wrapping && p - start >= output_space_left (buffer))
|
||||
output_add_newline (buffer);
|
||||
output_append (buffer, start, p);
|
||||
start = p;
|
||||
|
@ -640,7 +642,7 @@ output_format (buffer)
|
|||
const char *p = output_buffer_text_cursor (buffer);
|
||||
while (*p && *p != '%')
|
||||
++p;
|
||||
maybe_wrap_text (buffer, output_buffer_text_cursor (buffer), p);
|
||||
wrap_text (buffer, output_buffer_text_cursor (buffer), p);
|
||||
output_buffer_text_cursor (buffer) = p;
|
||||
}
|
||||
|
||||
|
@ -984,7 +986,7 @@ diagnostic_for_decl (decl, msg, args_ptr, warn)
|
|||
|
||||
if (count_error (warn))
|
||||
{
|
||||
os = diagnostic_buffer->state;
|
||||
os = output_buffer_state (diagnostic_buffer);
|
||||
report_error_function (DECL_SOURCE_FILE (decl));
|
||||
output_set_prefix
|
||||
(diagnostic_buffer, context_as_prefix
|
||||
|
@ -995,7 +997,7 @@ diagnostic_for_decl (decl, msg, args_ptr, warn)
|
|||
finish_diagnostic ();
|
||||
output_destroy_prefix (diagnostic_buffer);
|
||||
|
||||
diagnostic_buffer->state = os;
|
||||
output_buffer_state (diagnostic_buffer) = os;
|
||||
}
|
||||
diagnostic_lock--;
|
||||
}
|
||||
|
@ -1159,7 +1161,7 @@ sorry VPARAMS ((const char *msgid, ...))
|
|||
va_list ap;
|
||||
output_state os;
|
||||
|
||||
os = diagnostic_buffer->state;
|
||||
os = output_buffer_state (diagnostic_buffer);
|
||||
VA_START (ap, msgid);
|
||||
|
||||
#ifndef ANSI_PROTOTYPES
|
||||
|
@ -1173,7 +1175,7 @@ sorry VPARAMS ((const char *msgid, ...))
|
|||
output_buffer_text_cursor (diagnostic_buffer) = msgid;
|
||||
output_format (diagnostic_buffer);
|
||||
finish_diagnostic ();
|
||||
diagnostic_buffer->state = os;
|
||||
output_buffer_state (diagnostic_buffer) = os;
|
||||
va_end (ap);
|
||||
}
|
||||
|
||||
|
@ -1208,7 +1210,7 @@ default_print_error_function (file)
|
|||
char *prefix = file ? build_message_string ("%s: ", file) : NULL;
|
||||
output_state os;
|
||||
|
||||
os = diagnostic_buffer->state;
|
||||
os = output_buffer_state (diagnostic_buffer);
|
||||
output_set_prefix (diagnostic_buffer, prefix);
|
||||
|
||||
if (current_function_decl == NULL)
|
||||
|
@ -1230,7 +1232,7 @@ default_print_error_function (file)
|
|||
|
||||
record_last_error_function ();
|
||||
output_to_stream (diagnostic_buffer, stderr);
|
||||
diagnostic_buffer->state = os;
|
||||
output_buffer_state (diagnostic_buffer) = os;
|
||||
free ((char*) prefix);
|
||||
}
|
||||
}
|
||||
|
@ -1505,14 +1507,14 @@ output_do_verbatim (buffer, msg, args_ptr)
|
|||
{
|
||||
output_state os;
|
||||
|
||||
os = buffer->state;
|
||||
os = output_buffer_state (buffer);
|
||||
output_prefix (buffer) = NULL;
|
||||
prefixing_policy (buffer) = DIAGNOSTICS_SHOW_PREFIX_NEVER;
|
||||
output_buffer_text_cursor (buffer) = msg;
|
||||
output_buffer_ptr_to_format_args (buffer) = args_ptr;
|
||||
output_set_maximum_length (buffer, 0);
|
||||
output_format (buffer);
|
||||
buffer->state = os;
|
||||
output_buffer_state (buffer) = os;
|
||||
}
|
||||
|
||||
/* Output MESSAGE verbatim into BUFFER. */
|
||||
|
@ -1568,14 +1570,14 @@ report_diagnostic (dc)
|
|||
|
||||
if (count_error (diagnostic_is_warning (dc)))
|
||||
{
|
||||
os = diagnostic_buffer->state;
|
||||
os = output_buffer_state (diagnostic_buffer);
|
||||
diagnostic_msg = diagnostic_message (dc);
|
||||
diagnostic_args = diagnostic_argument_list (dc);
|
||||
(*diagnostic_starter (dc)) (diagnostic_buffer, dc);
|
||||
output_format (diagnostic_buffer);
|
||||
(*diagnostic_finalizer (dc)) (diagnostic_buffer, dc);
|
||||
finish_diagnostic ();
|
||||
diagnostic_buffer->state = os;
|
||||
output_buffer_state (diagnostic_buffer) = os;
|
||||
}
|
||||
|
||||
diagnostic_lock--;
|
||||
|
@ -1666,7 +1668,7 @@ report_problematic_module (buffer)
|
|||
|
||||
if (output_needs_newline (buffer))
|
||||
{
|
||||
output_verbatim (buffer, "\n");
|
||||
output_add_newline (buffer);
|
||||
output_needs_newline (buffer) = 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -87,6 +87,7 @@ struct output_buffer
|
|||
#define output_buffer_text_cursor(BUFFER) (BUFFER)->state.cursor
|
||||
#define output_buffer_format_args(BUFFER) *((BUFFER)->state.format_args)
|
||||
#define output_needs_newline(BUFFER) (BUFFER)->state.need_newline_p
|
||||
#define output_buffer_state(BUFFER) (BUFFER)->state
|
||||
|
||||
/* This data structure bundles altogether any information relevent to
|
||||
the context of a diagnostic message. */
|
||||
|
|
Loading…
Reference in New Issue