X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=gas%2Fapp.c;h=38d8e78f211f9deefe28ccd3e3fbc14cc2a82c38;hb=8b8c7c9f49992750f66f81b4601d593a3858d98c;hp=ec3a35ee865ffdb521ab784e70e38f38d0c6cf6c;hpb=34bca50861dd6a0d59b8f8b215865e3a52895191;p=deliverable%2Fbinutils-gdb.git diff --git a/gas/app.c b/gas/app.c index ec3a35ee86..38d8e78f21 100644 --- a/gas/app.c +++ b/gas/app.c @@ -1,7 +1,5 @@ /* This is the Assembler Pre-Processor - Copyright 1987, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, - 1999, 2000, 2001, 2002, 2003, 2005, 2006, 2007, 2008, 2009, 2010, 2012 - Free Software Foundation, Inc. + Copyright (C) 1987-2016 Free Software Foundation, Inc. This file is part of GAS, the GNU Assembler. @@ -160,7 +158,10 @@ do_scrub_begin (int m68k_mri ATTRIBUTE_UNUSED) for (p = line_comment_chars; *p; p++) lex[(unsigned char) *p] = LEX_IS_LINE_COMMENT_START; - for (p = line_separator_chars; *p; p++) +#ifndef tc_line_separator_chars +#define tc_line_separator_chars line_separator_chars +#endif + for (p = tc_line_separator_chars; *p; p++) lex[(unsigned char) *p] = LEX_IS_LINE_SEPARATOR; #ifdef tc_parallel_separator_chars @@ -210,7 +211,7 @@ do_scrub_begin (int m68k_mri ATTRIBUTE_UNUSED) /* Saved state of the scrubber. */ static int state; static int old_state; -static char *out_string; +static const char *out_string; static char out_buf[20]; static int add_newlines; static char *saved_input; @@ -228,7 +229,7 @@ struct app_save { int state; int old_state; - char * out_string; + const char * out_string; char out_buf[sizeof (out_buf)]; int add_newlines; char * saved_input; @@ -246,9 +247,9 @@ struct app_save char * app_push (void) { - register struct app_save *saved; + struct app_save *saved; - saved = (struct app_save *) xmalloc (sizeof (*saved)); + saved = XNEW (struct app_save); saved->state = state; saved->old_state = old_state; saved->out_string = out_string; @@ -258,7 +259,7 @@ app_push (void) saved->saved_input = NULL; else { - saved->saved_input = (char *) xmalloc (saved_input_len); + saved->saved_input = XNEWVEC (char, saved_input_len); memcpy (saved->saved_input, saved_input, saved_input_len); saved->saved_input_len = saved_input_len; } @@ -283,7 +284,7 @@ app_push (void) void app_pop (char *arg) { - register struct app_save *saved = (struct app_save *) arg; + struct app_save *saved = (struct app_save *) arg; /* There is no do_scrub_end (). */ state = saved->state; @@ -359,7 +360,7 @@ do_scrub_chars (size_t (*get) (char *, size_t), char *tostart, size_t tolen) char *from; char *fromend; size_t fromlen; - register int ch, ch2 = 0; + int ch, ch2 = 0; /* Character that started the string we're working on. */ static char quotechar; @@ -1217,9 +1218,16 @@ do_scrub_chars (size_t (*get) (char *, size_t), char *tostart, size_t tolen) while (ch != EOF && !IS_NEWLINE (ch)) ch = GET (); if (ch == EOF) - as_warn (_("end of file in comment; newline inserted")); + { + as_warn (_("end of file in comment; newline inserted")); + PUT ('\n'); + } + else /* IS_NEWLINE (ch) */ + { + /* To process non-zero add_newlines. */ + UNGET (ch); + } state = 0; - PUT ('\n'); break; } /* Looks like `# 123 "filename"' from cpp. */ @@ -1283,7 +1291,7 @@ do_scrub_chars (size_t (*get) (char *, size_t), char *tostart, size_t tolen) #ifdef WARN_COMMENTS if (!found_comment) - as_where (&found_comment_file, &found_comment); + found_comment_file = as_where (&found_comment); #endif do {