@@ -266,6 +266,8 @@ pub fn check(path: &Path, bad: &mut bool) {
266
266
contains_ignore_directive ( can_contain, & contents, "end-whitespace" ) ;
267
267
let mut skip_trailing_newlines =
268
268
contains_ignore_directive ( can_contain, & contents, "trailing-newlines" ) ;
269
+ let mut skip_leading_newlines =
270
+ contains_ignore_directive ( can_contain, & contents, "leading-newlines" ) ;
269
271
let mut skip_copyright = contains_ignore_directive ( can_contain, & contents, "copyright" ) ;
270
272
let mut leading_new_lines = false ;
271
273
let mut trailing_new_lines = 0 ;
@@ -350,7 +352,10 @@ pub fn check(path: &Path, bad: &mut bool) {
350
352
}
351
353
}
352
354
if leading_new_lines {
353
- tidy_error ! ( bad, "{}: leading newline" , file. display( ) ) ;
355
+ let mut err = |_| {
356
+ tidy_error ! ( bad, "{}: leading newline" , file. display( ) ) ;
357
+ } ;
358
+ suppressible_tidy_err ! ( err, skip_leading_newlines, "mising leading newline" ) ;
354
359
}
355
360
let mut err = |msg : & str | {
356
361
tidy_error ! ( bad, "{}: {}" , file. display( ) , msg) ;
@@ -395,6 +400,9 @@ pub fn check(path: &Path, bad: &mut bool) {
395
400
if let Directive :: Ignore ( false ) = skip_trailing_newlines {
396
401
tidy_error ! ( bad, "{}: ignoring trailing newlines unnecessarily" , file. display( ) ) ;
397
402
}
403
+ if let Directive :: Ignore ( false ) = skip_leading_newlines {
404
+ tidy_error ! ( bad, "{}: ignoring leading newlines unnecessarily" , file. display( ) ) ;
405
+ }
398
406
if let Directive :: Ignore ( false ) = skip_copyright {
399
407
tidy_error ! ( bad, "{}: ignoring copyright unnecessarily" , file. display( ) ) ;
400
408
}
0 commit comments