Apply patches from debian libmcpp
This commit is contained in:
parent
b928ecf24c
commit
e401a3c865
@ -428,16 +428,11 @@ int main
|
|||||||
|
|
||||||
fatal_error_exit:
|
fatal_error_exit:
|
||||||
#if MCPP_LIB
|
#if MCPP_LIB
|
||||||
/* Free malloced memory */
|
|
||||||
if (mcpp_debug & MACRO_CALL) {
|
|
||||||
if (in_file != stdin_name)
|
|
||||||
free( in_file);
|
|
||||||
}
|
|
||||||
clear_filelist();
|
clear_filelist();
|
||||||
clear_symtable();
|
clear_symtable();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (fp_in != stdin)
|
if (fp_in && fp_in != stdin)
|
||||||
fclose( fp_in);
|
fclose( fp_in);
|
||||||
if (fp_out != stdout)
|
if (fp_out != stdout)
|
||||||
fclose( fp_out);
|
fclose( fp_out);
|
||||||
|
@ -822,7 +822,7 @@ escape:
|
|||||||
if (diag && iscntrl( c) && ((char_type[ c] & SPA) == 0)
|
if (diag && iscntrl( c) && ((char_type[ c] & SPA) == 0)
|
||||||
&& (warn_level & 1))
|
&& (warn_level & 1))
|
||||||
cwarn(
|
cwarn(
|
||||||
"Illegal control character %.0s0lx%02x in quotation" /* _W1_ */
|
"Illegal control character %.0s0x%02x in quotation" /* _W1_ */
|
||||||
, NULL, (long) c, NULL);
|
, NULL, (long) c, NULL);
|
||||||
*out_p++ = c;
|
*out_p++ = c;
|
||||||
chk_limit:
|
chk_limit:
|
||||||
@ -861,10 +861,10 @@ chk_limit:
|
|||||||
if (mcpp_mode != POST_STD && option_flags.lang_asm) {
|
if (mcpp_mode != POST_STD && option_flags.lang_asm) {
|
||||||
/* STD, KR */
|
/* STD, KR */
|
||||||
if (warn_level & 1)
|
if (warn_level & 1)
|
||||||
cwarn( unterm_char, out, 0L, NULL); /* _W1_ */
|
cwarn( unterm_char, NULL, (long)delim, NULL); /* _W1_ */
|
||||||
goto done;
|
goto done;
|
||||||
} else {
|
} else {
|
||||||
cerror( unterm_char, out, 0L, skip); /* _E_ */
|
cerror( unterm_char, NULL, (long)delim, skip); /* _E_ */
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
cerror( "Unterminated header name %s%.0ld%s" /* _E_ */
|
cerror( "Unterminated header name %s%.0ld%s" /* _E_ */
|
||||||
@ -875,9 +875,9 @@ chk_limit:
|
|||||||
if (mcpp_mode != POST_STD && option_flags.lang_asm) {
|
if (mcpp_mode != POST_STD && option_flags.lang_asm) {
|
||||||
/* STD, KR */
|
/* STD, KR */
|
||||||
if (warn_level & 1)
|
if (warn_level & 1)
|
||||||
cwarn( empty_const, out, 0L, skip); /* _W1_ */
|
cwarn( empty_const, NULL, (long)delim, skip); /* _W1_ */
|
||||||
} else {
|
} else {
|
||||||
cerror( empty_const, out, 0L, skip); /* _E_ */
|
cerror( empty_const, NULL, (long)delim, skip); /* _E_ */
|
||||||
out_p = NULL;
|
out_p = NULL;
|
||||||
goto done;
|
goto done;
|
||||||
}
|
}
|
||||||
@ -1747,9 +1747,11 @@ not_comment:
|
|||||||
*tp++ = '\t';
|
*tp++ = '\t';
|
||||||
else
|
else
|
||||||
*tp++ = ' '; /* Convert to ' ' */
|
*tp++ = ' '; /* Convert to ' ' */
|
||||||
} else if (! (char_type[ *(tp - 1) & UCHARMAX] & HSP)) {
|
} else if (temp == tp
|
||||||
|
|| ! (char_type[ *(tp - 1) & UCHARMAX] & HSP)) {
|
||||||
*tp++ = ' '; /* Squeeze white spaces */
|
*tp++ = ' '; /* Squeeze white spaces */
|
||||||
} else if (mcpp_mode == OLD_PREP && *(tp - 1) == COM_SEP) {
|
} else if (mcpp_mode == OLD_PREP && tp > temp
|
||||||
|
&& *(tp - 1) == COM_SEP) {
|
||||||
*(tp - 1) = ' '; /* Replace COM_SEP with ' ' */
|
*(tp - 1) = ' '; /* Replace COM_SEP with ' ' */
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -1772,7 +1774,7 @@ not_comment:
|
|||||||
default:
|
default:
|
||||||
if (iscntrl( c)) {
|
if (iscntrl( c)) {
|
||||||
cerror( /* Skip the control character */
|
cerror( /* Skip the control character */
|
||||||
"Illegal control character %.0s0x%lx, skipped the character" /* _E_ */
|
"Illegal control character %.0s0x%02x, skipped the character" /* _E_ */
|
||||||
, NULL, (long) c, NULL);
|
, NULL, (long) c, NULL);
|
||||||
} else { /* Any valid character */
|
} else { /* Any valid character */
|
||||||
*tp++ = c;
|
*tp++ = c;
|
||||||
@ -1946,6 +1948,9 @@ static char * get_line(
|
|||||||
dump_string( NULL, ptr);
|
dump_string( NULL, ptr);
|
||||||
}
|
}
|
||||||
len = strlen( ptr);
|
len = strlen( ptr);
|
||||||
|
if (len == 0)
|
||||||
|
cwarn( "null character ignored", NULL, 0L, NULL);
|
||||||
|
|
||||||
if (NBUFF - 1 <= ptr - infile->buffer + len
|
if (NBUFF - 1 <= ptr - infile->buffer + len
|
||||||
&& *(ptr + len - 1) != '\n') {
|
&& *(ptr + len - 1) != '\n') {
|
||||||
/* The line does not yet end, though the buffer is full. */
|
/* The line does not yet end, though the buffer is full. */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user