From dcdae63502214dcf898232f68949d09f4737462f Mon Sep 17 00:00:00 2001 From: Alain Magloire Date: Mon, 15 Dec 2003 21:40:36 +0000 Subject: [PATCH] Patch from Thomas F. Some patterns were marked as error instead of warning. --- .../cdt/internal/errorparsers/GLDErrorParser.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/errorparsers/GLDErrorParser.java b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/errorparsers/GLDErrorParser.java index 4ffd9c94ae0..762cc2ad6e8 100644 --- a/core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/errorparsers/GLDErrorParser.java +++ b/core/org.eclipse.cdt.core/src/org/eclipse/cdt/internal/errorparsers/GLDErrorParser.java @@ -20,6 +20,8 @@ public class GLDErrorParser implements IErrorParser { // 2- // Something went wrong check if it is "ld" the linkeer bay cheching // the last letter for "ld" + // An example might be (not all are warnings): + // ntox86-ld: warning: libcpp.so.2, needed by C:/temp//libdisplay.so, may conflict with libcpp.so.3 int firstColon= line.indexOf(':'); if (firstColon != -1) { String buf= line.substring(0, firstColon); @@ -46,12 +48,20 @@ public class GLDErrorParser implements IErrorParser { } eoParser.generateMarker(file, 0, desc, IMarkerGenerator.SEVERITY_ERROR_RESOURCE, null); } else if (buf.endsWith("ld")){ + // By default treat the condition as fatal/error, unless marked as a warning + int errorType = IMarkerGenerator.SEVERITY_ERROR_RESOURCE; + desc = desc.trim(); + if(desc.startsWith("warning") || desc.startsWith("Warning")) { + errorType = IMarkerGenerator.SEVERITY_WARNING; + } + String fileName = line.substring(0, firstColon); IFile file = eoParser.findFilePath(fileName); if (file == null) { desc = fileName + " " + desc; } - eoParser.generateMarker(file, 0, desc, IMarkerGenerator.SEVERITY_ERROR_RESOURCE, null); + + eoParser.generateMarker(file, 0, desc, errorType, null); } } return false;