GccStyleErrorMessages
From CSWiki
Causes chuck to generate gcc style/format error messages to make the edit/compile/listen cycle much easier using emacs compilation mode.
--- chuck_errmsg.cpp 2006-09-19 14:54:42.000000000 -0600 +++ chuck_errmsg.cpp 2006-10-14 22:23:33.000000000 -0600 @@ -40,6 +40,8 @@ #include "util_thread.h" +#define GCC_STYLE_ERROR_MESSAGES + // global int EM_tokPos = 0; int EM_lineNum = 1; @@ -128,6 +130,13 @@ num--; } +#ifdef GCC_STYLE_ERROR_MESSAGES + fprintf(stderr, "%s:%d: error: ", *fileName ? mini(fileName) : "chuck", num); + va_start(ap, message); + vfprintf(stderr, message, ap); + va_end(ap); + fprintf(stderr, "\n"); +#else fprintf( stderr, "[%s]:", *fileName ? mini(fileName) : "chuck" ); sprintf( g_lasterror, "[%s]:", *fileName ? mini(fileName) : "chuck" ); if(lines) @@ -145,6 +154,7 @@ fprintf(stderr, "\n"); fflush( stderr ); strcat( g_lasterror, g_buffer ); +#endif } @@ -153,6 +163,14 @@ { va_list ap; + +#ifdef GCC_STYLE_ERROR_MESSAGES + fprintf(stderr, "%s:%d: error: ", *fileName ? mini(fileName) : "chuck", line); + va_start(ap, message); + vfprintf(stderr, message, ap); + va_end(ap); + fprintf(stderr, "\n"); +#else fprintf( stderr, "[%s]:", *fileName ? mini(fileName) : "chuck" ); sprintf( g_lasterror, "[%s]:", *fileName ? mini(fileName) : "chuck" ); if(line) @@ -171,6 +189,7 @@ strcat( g_lasterror, g_buffer ); fprintf( stderr, "\n" ); +#endif fflush( stderr ); } @@ -180,6 +199,13 @@ { va_list ap; +#ifdef GCC_STYLE_ERROR_MESSAGES + fprintf(stderr, "%s:%d: error: ", *fileName ? mini(fileName) : "chuck", line); + va_start(ap, message); + vfprintf(stderr, message, ap); + va_end(ap); + fprintf(stderr, "\n"); +#else fprintf( stderr, "[%s]:", *fileName ? mini(fileName) : "chuck" ); sprintf( g_lasterror, "[%s]:", *fileName ? mini(fileName) : "chuck" ); if(line) @@ -190,7 +216,8 @@ } fprintf( stderr, " " ); strcat( g_lasterror, " " ); - +#endif + va_start( ap, message ); vfprintf( stderr, message, ap ); vsprintf( g_buffer, message, ap );