From 8e98551ef12f91fa13796303292abc32e9776b64 Mon Sep 17 00:00:00 2001 From: Teddy Date: Sun, 18 May 2014 15:40:26 +0800 Subject: ... --- cibic.pdf | Bin 95487 -> 96323 bytes cibic.tex | 15 +++++++++++++++ 2 files changed, 15 insertions(+) diff --git a/cibic.pdf b/cibic.pdf index 4938f6a..9464b66 100644 Binary files a/cibic.pdf and b/cibic.pdf differ diff --git a/cibic.tex b/cibic.tex index e96ec60..6ea6be0 100644 --- a/cibic.tex +++ b/cibic.tex @@ -97,6 +97,21 @@ char linebuff[MAX_LINEBUFF], *lptr = linebuff; \end{minted} \caption {Code Snippet to Track Down Location} \end{listing} +\subsection{Friendly Error Report} +CIBIC generates friendly and accurate error report. The corresponding line and column number are printed. Besides, if it is an syntax error, CIBIC will print the context where the error occurs just like clang. +\begin{figure}[H] + \centering +\begin{BVerbatim} +2:28: error: syntax error, unexpected ';', expecting ',' or ')' + int this_is_an_example(; + ^ + +2:13: error: syntax error, unexpected identifier + typedef a + ^ +\end{BVerbatim} +\caption {Some Error Report Examples} +\end{figure} \section{Semantic Analysis and Implementation} The parsing process is also an AST (Abstrct Syntax Tree) construction process. -- cgit v1.2.3