diff --git a/config/src/main/java/com/typesafe/config/impl/Tokenizer.java b/config/src/main/java/com/typesafe/config/impl/Tokenizer.java
index c307c7b6..2aeb7184 100644
--- a/config/src/main/java/com/typesafe/config/impl/Tokenizer.java
+++ b/config/src/main/java/com/typesafe/config/impl/Tokenizer.java
@@ -36,6 +36,8 @@ final class Tokenizer {
             return "newline";
         else if (codepoint == '\t')
             return "tab";
+        else if (codepoint == -1)
+            return "end of file";
         else if (Character.isISOControl(codepoint))
             return String.format("control character 0x%x", codepoint);
         else
diff --git a/config/src/test/scala/com/typesafe/config/impl/TokenizerTest.scala b/config/src/test/scala/com/typesafe/config/impl/TokenizerTest.scala
index d4682e93..ea39063b 100644
--- a/config/src/test/scala/com/typesafe/config/impl/TokenizerTest.scala
+++ b/config/src/test/scala/com/typesafe/config/impl/TokenizerTest.scala
@@ -167,7 +167,9 @@ class TokenizerTest extends TestUtils {
             "\"\\u\"", // too short
             "\"", // just a single quote
             """ "abcdefg""", // no end quote
-            """\"\""" // file ends with a backslash
+            """\"\""", // file ends with a backslash
+            "$", // file ends with a $
+            "${" // file ends with a ${
             )
 
         for (t <- invalidTests) {