diff --git a/lib/credo/code.ex b/lib/credo/code.ex index 8a73f8de2..294439383 100644 --- a/lib/credo/code.ex +++ b/lib/credo/code.ex @@ -74,18 +74,24 @@ defmodule Credo.Code do @doc false def ast(source, filename \\ "nofilename") when is_binary(source) do - case Code.string_to_quoted(source, line: 1, columns: true, file: filename) do - {:ok, value} -> - {:ok, value} - - {:error, error} -> - {:error, [issue_for(error, filename)]} + case string_to_quoted(source, filename) do + {:ok, value} -> {:ok, value} + {:error, error} -> {:error, [issue_for(error, filename)]} end rescue e in UnicodeConversionError -> {:error, [issue_for({1, e.message, nil}, filename)]} end + defp string_to_quoted(source, filename) do + Code.string_to_quoted(source, + line: 1, + columns: true, + file: filename, + emit_warnings: false + ) + end + defp issue_for({line_no, error_message, _}, filename) do %Credo.Issue{ check: ParserError,