fn duplicate_reason_violations( rel: &str, lines: &[&str], directive_lines: &[usize], ) -> Vec<Violation>