diff -c -r -N ../mcpp-2.7.2/src/internal.H ./src/internal.H *** ../mcpp-2.7.2/src/internal.H 2008-08-27 10:31:16.000000000 -0230 --- ./src/internal.H 2009-12-17 21:01:35.000000000 -0330 *************** *** 390,395 **** --- 390,397 ---- extern char identifier[]; /* Lastly scanned name */ extern IFINFO ifstack[]; /* Information of #if nesting */ extern char work_buf[]; + extern FILEINFO * sh_file; + extern int sh_line; /* Temporary buffer for directive line and macro expansion */ /* main.c */ *************** *** 557,562 **** #endif #endif ! #if HOST_HAVE_STPCPY extern char * stpcpy( char * dest, const char * src); #endif --- 559,564 ---- #endif #endif ! #if HOST_HAVE_STPCPY && !defined(stpcpy) extern char * stpcpy( char * dest, const char * src); #endif diff -c -r -N ../mcpp-2.7.2/src/main.c ./src/main.c *** ../mcpp-2.7.2/src/main.c 2008-11-05 05:04:46.000000000 -0330 --- ./src/main.c 2009-12-17 20:42:42.000000000 -0330 *************** *** 326,331 **** --- 326,333 ---- = FALSE; option_flags.trig = TRIGRAPHS_INIT; option_flags.dig = DIGRAPHS_INIT; + sh_file = NULL; + sh_line = 0; } int mcpp_lib_main diff -c -r -N ../mcpp-2.7.2/src/support.c ./src/support.c *** ../mcpp-2.7.2/src/support.c 2008-06-10 06:02:33.000000000 -0230 --- ./src/support.c 2009-12-17 20:42:39.000000000 -0330 *************** *** 188,194 **** size_t length ) { ! if (mem_buf_p->bytes_avail < length) { /* Need to allocate more memory */ size_t size = MAX( BUF_INCR_SIZE, length); if (mem_buf_p->buffer == NULL) { /* 1st append */ --- 188,194 ---- size_t length ) { ! if (mem_buf_p->bytes_avail < length + 1) { /* Need to allocate more memory */ size_t size = MAX( BUF_INCR_SIZE, length); if (mem_buf_p->buffer == NULL) { /* 1st append */ *************** *** 1722,1727 **** --- 1722,1729 ---- sp -= 2; while (*sp != '\n') /* Until end of line */ mcpp_fputc( *sp++, OUT); + mcpp_fputc( '\n', OUT); + wrong_line = TRUE; } goto end_line; default: /* Not a comment */ diff -c -r -N ../mcpp-2.7.2/src/system.c ./src/system.c *** ../mcpp-2.7.2/src/system.c 2008-11-26 06:23:51.000000000 -0330 --- ./src/system.c 2009-12-17 20:42:42.000000000 -0330 *************** *** 3858,3863 **** --- 3858,3866 ---- } #endif + FILEINFO* sh_file; + int sh_line; + void sharp( FILEINFO * sharp_file, int flag /* Flag to append to the line for GCC */ *************** *** 3868,3875 **** * else (i.e. 'sharp_file' is NULL) 'infile'. */ { - static FILEINFO * sh_file; - static int sh_line; FILEINFO * file; int line; --- 3871,3876 ----