-use rustc::lint::{in_external_macro, EarlyContext, EarlyLintPass, LintArray, LintContext, LintPass};
-use rustc::{declare_tool_lint, lint_array};
-use syntax::ast::*;
-
-use crate::utils::span_help_and_lint;
-
-/// **What it does:** Checks for usage of if expressions with an `else if` branch,
-/// but without a final `else` branch.
-///
-/// **Why is this bad?** Some coding guidelines require this (e.g. MISRA-C:2004 Rule 14.10).
-///
-/// **Known problems:** None.
-///
-/// **Example:**
-/// ```rust
-/// if x.is_positive() {
-/// a();
-/// } else if x.is_negative() {
-/// b();
-/// }
-/// ```
-///
-/// Could be written:
-///
-/// ```rust
-/// if x.is_positive() {
-/// a();
-/// } else if x.is_negative() {
-/// b();
-/// } else {
-/// // we don't care about zero
-/// }
-/// ```