mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-13 14:49:47 +02:00
* Added option to stop on parser errors
git-svn-id: trunk@8163 -
This commit is contained in:
parent
eede14ca9e
commit
0cd246808e
@ -40,6 +40,7 @@ var
|
||||
InputFiles, DescrFiles: TStringList;
|
||||
PackageName, DocLang, ContentFile : String;
|
||||
Engine: TFPDocEngine;
|
||||
StopOnParserError : Boolean;
|
||||
|
||||
Procedure Usage(AnExitCode : Byte);
|
||||
|
||||
@ -108,6 +109,7 @@ begin
|
||||
DescrFiles := TStringList.Create;
|
||||
BackendOptions := TStringList.Create;
|
||||
Engine := TFPDocEngine.Create;
|
||||
StopOnParserError:=False;
|
||||
end;
|
||||
|
||||
procedure FreeOptions;
|
||||
@ -161,6 +163,8 @@ begin
|
||||
Engine.WarnNoNode := True
|
||||
else if s = '--show-private' then
|
||||
Engine.HidePrivate := False
|
||||
else if s = '--stop-on-parser-error' then
|
||||
StopOnParserError := True
|
||||
else
|
||||
begin
|
||||
i := Pos('=', s);
|
||||
@ -243,8 +247,11 @@ begin
|
||||
ParseSource(Engine, InputFiles[i], OSTarget, CPUTarget);
|
||||
except
|
||||
on e: EParserError do
|
||||
WriteLn(StdErr, Format('%s(%d,%d): %s',
|
||||
[e.Filename, e.Row, e.Column, e.Message]));
|
||||
If StopOnParserError then
|
||||
Raise
|
||||
else
|
||||
WriteLn(StdErr, Format('%s(%d,%d): %s',
|
||||
[e.Filename, e.Row, e.Column, e.Message]));
|
||||
end;
|
||||
WriterClass:=GetWriterClass(Backend);
|
||||
Writer:=WriterClass.Create(Engine.Package,Engine);
|
||||
|
Loading…
Reference in New Issue
Block a user