@@ -45,6 +45,7 @@ namespace swift {
45
45
template <typename DF>
46
46
void tokenize (const LangOptions &LangOpts, const SourceManager &SM,
47
47
unsigned BufferID, unsigned Offset, unsigned EndOffset,
48
+ DiagnosticEngine * Diags,
48
49
CommentRetentionMode RetainComments,
49
50
TriviaRetentionMode TriviaRetention,
50
51
bool TokenizeInterpolatedString, ArrayRef<Token> SplitTokens,
@@ -56,7 +57,7 @@ void tokenize(const LangOptions &LangOpts, const SourceManager &SM,
56
57
if (Offset == 0 && EndOffset == 0 )
57
58
EndOffset = SM.getRangeForBuffer (BufferID).getByteLength ();
58
59
59
- Lexer L (LangOpts, SM, BufferID, /* Diags= */ nullptr , /* InSILMode=*/ false ,
60
+ Lexer L (LangOpts, SM, BufferID, Diags, /* InSILMode=*/ false ,
60
61
RetainComments, TriviaRetention, Offset, EndOffset);
61
62
62
63
auto TokComp = [&](const Token &A, const Token &B) {
@@ -260,6 +261,7 @@ static void getStringPartTokens(const Token &Tok, const LangOptions &LangOpts,
260
261
261
262
std::vector<Token> NewTokens = swift::tokenize (LangOpts, SM, BufID,
262
263
Offset, EndOffset,
264
+ /* Diags=*/ nullptr ,
263
265
/* KeepComments=*/ true );
264
266
Toks.insert (Toks.end (), NewTokens.begin (), NewTokens.end ());
265
267
@@ -278,12 +280,14 @@ static void getStringPartTokens(const Token &Tok, const LangOptions &LangOpts,
278
280
std::vector<Token> swift::tokenize (const LangOptions &LangOpts,
279
281
const SourceManager &SM, unsigned BufferID,
280
282
unsigned Offset, unsigned EndOffset,
283
+ DiagnosticEngine *Diags,
281
284
bool KeepComments,
282
285
bool TokenizeInterpolatedString,
283
286
ArrayRef<Token> SplitTokens) {
284
287
std::vector<Token> Tokens;
285
288
286
289
tokenize (LangOpts, SM, BufferID, Offset, EndOffset,
290
+ Diags,
287
291
KeepComments ? CommentRetentionMode::ReturnAsTokens
288
292
: CommentRetentionMode::AttachToNextToken,
289
293
TriviaRetentionMode::WithoutTrivia, TokenizeInterpolatedString,
@@ -299,13 +303,15 @@ std::vector<Token> swift::tokenize(const LangOptions &LangOpts,
299
303
std::vector<std::pair<RC<syntax::RawSyntax>, syntax::AbsolutePosition>>
300
304
swift::tokenizeWithTrivia (const LangOptions &LangOpts, const SourceManager &SM,
301
305
unsigned BufferID, unsigned Offset,
302
- unsigned EndOffset) {
306
+ unsigned EndOffset,
307
+ DiagnosticEngine *Diags) {
303
308
std::vector<std::pair<RC<syntax::RawSyntax>, syntax::AbsolutePosition>>
304
309
Tokens;
305
310
syntax::AbsolutePosition RunningPos;
306
311
307
312
tokenize (
308
313
LangOpts, SM, BufferID, Offset, EndOffset,
314
+ Diags,
309
315
CommentRetentionMode::AttachToNextToken, TriviaRetentionMode::WithTrivia,
310
316
/* TokenizeInterpolatedString=*/ false ,
311
317
/* SplitTokens=*/ ArrayRef<Token>(),
0 commit comments