summaryrefslogtreecommitdiff
path: root/idlc/source/errorhandler.cxx
diff options
context:
space:
mode:
authorCédric Bosdonnat <cedricbosdo@openoffice.org>2010-09-14 14:20:04 +0200
committerCédric Bosdonnat <cedricbosdo@openoffice.org>2010-09-14 14:22:07 +0200
commita4f835d03a4cad5e4b454faa8eebbf3eefc0448c (patch)
treef82ebf73633e89242b6c9e01a701f8a79740ecec /idlc/source/errorhandler.cxx
parentb1a46b9bc8f3875890234a4c64676edf97516114 (diff)
idlc-error-offset.diff: Add character offset for idlc errors
i#81780
Diffstat (limited to 'idlc/source/errorhandler.cxx')
-rw-r--r--idlc/source/errorhandler.cxx15
1 files changed, 12 insertions, 3 deletions
diff --git a/idlc/source/errorhandler.cxx b/idlc/source/errorhandler.cxx
index 4ab4844eeca7..2bc8a6699403 100644
--- a/idlc/source/errorhandler.cxx
+++ b/idlc/source/errorhandler.cxx
@@ -488,7 +488,7 @@ static OString flagToString(sal_uInt32 flag)
return flagStr;
}
-static void errorHeader(ErrorCode eCode, sal_Int32 lineNumber)
+static void errorHeader(ErrorCode eCode, sal_Int32 lineNumber, sal_uInt32 start, sal_uInt32 end)
{
OString file;
if ( idlc()->getFileName() == idlc()->getRealFileName() )
@@ -496,14 +496,23 @@ static void errorHeader(ErrorCode eCode, sal_Int32 lineNumber)
else
file = idlc()->getFileName();
- fprintf(stderr, "%s(%lu) : %s", file.getStr(),
+ fprintf(stderr, "%s:%lu [%lu:%lu] : %s", file.getStr(),
sal::static_int_cast< unsigned long >(lineNumber),
+ sal::static_int_cast< unsigned long >(start),
+ sal::static_int_cast< unsigned long >(end),
errorCodeToMessage(eCode));
}
+static void errorHeader(ErrorCode eCode, sal_uInt32 lineNumber)
+{
+ errorHeader(eCode, lineNumber,
+ idlc()->getOffsetStart(), idlc()->getOffsetEnd());
+}
+
static void errorHeader(ErrorCode eCode)
{
- errorHeader(eCode, idlc()->getLineNumber());
+ errorHeader(eCode, idlc()->getLineNumber(),
+ idlc()->getOffsetStart(), idlc()->getOffsetEnd());
}
static void warningHeader(WarningCode wCode)