SF.net SVN: geany: [801] trunk

ntrel at users.sourceforge.net ntrel at xxxxx
Fri Sep 8 11:26:01 UTC 2006


Revision: 801
          http://svn.sourceforge.net/geany/?rev=801&view=rev
Author:   ntrel
Date:     2006-09-08 04:25:56 -0700 (Fri, 08 Sep 2006)

Log Message:
-----------
Make C, C++, Ruby and Java error message parsing more tolerant so
that linker errors are also parsed if debug line info is available.

Modified Paths:
--------------
    trunk/ChangeLog
    trunk/src/msgwindow.c

Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog	2006-09-08 10:20:15 UTC (rev 800)
+++ trunk/ChangeLog	2006-09-08 11:25:56 UTC (rev 801)
@@ -4,6 +4,10 @@
    Show parsable errors in red; stderr and compile failure in dark red.
  * src/callbacks.c: Fix compilation problem with sci_cb_do_comment.
  * src/document.c: Quick fix for C89 compatibility.
+ * src/msgwindow.c:
+   Make C, C++, Ruby and Java error message parsing more tolerant so
+   that linker errors are also parsed if debug line info is available.
+   Group all gcc-like error message parsing information together.
 
 
 2006-09-07  Enrico Tröger  <enrico.troeger at uvena.de>

Modified: trunk/src/msgwindow.c
===================================================================
--- trunk/src/msgwindow.c	2006-09-08 10:20:15 UTC (rev 800)
+++ trunk/src/msgwindow.c	2006-09-08 11:25:56 UTC (rev 801)
@@ -413,30 +413,6 @@
 		{
 			return;
 		}
-		// only gcc is supported, I don't know any other C(++) compilers and their error messages
-		case GEANY_FILETYPES_C:
-		case GEANY_FILETYPES_CPP:
-		case GEANY_FILETYPES_RUBY:
-		case GEANY_FILETYPES_JAVA:
-		{
-			// empty.h:4: Warnung: type defaults to `int' in declaration of `foo'
-			// empty.c:21: error: conflicting types for `foo'
-			data.pattern = ":";
-			data.min_fields = 4;
-			data.line_idx = 1;
-			data.file_idx = 0;
-			break;
-		}
-		case GEANY_FILETYPES_FORTRAN:
-		case GEANY_FILETYPES_LATEX:
-		{
-			// ./kommtechnik_2b.tex:18: Emergency stop.
-			data.pattern = ":";
-			data.min_fields = 3;
-			data.line_idx = 1;
-			data.file_idx = 0;
-			break;
-		}
 		case GEANY_FILETYPES_PHP:
 		{
 			// Parse error: parse error, unexpected T_CASE in brace_bug.php on line 3
@@ -529,10 +505,21 @@
 			data.file_idx = -1;
 			break;
 		}
+		/* All GNU gcc-like error messages */
+		case GEANY_FILETYPES_C:
+		case GEANY_FILETYPES_CPP:
+		case GEANY_FILETYPES_RUBY:
+		case GEANY_FILETYPES_JAVA:
+			// only gcc is supported, I don't know any other C(++) compilers and their error messages
+			// empty.h:4: Warnung: type defaults to `int' in declaration of `foo'
+			// empty.c:21: error: conflicting types for `foo'
+			// Only parse file and line, so that linker errors will also work (with -g)
+		case GEANY_FILETYPES_FORTRAN:
+		case GEANY_FILETYPES_LATEX:
+			// ./kommtechnik_2b.tex:18: Emergency stop.
 		case GEANY_FILETYPES_MAKE:	// Assume makefile is building with gcc
 		default:	// The default is a GNU gcc type error
 		{
-			// gantry.d:6: variable gantry.main.c reference to auto class must be auto
 			data.pattern = ":";
 			data.min_fields = 3;
 			data.line_idx = 1;


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.



More information about the Commits mailing list