include missing reference names in error message
diff --git a/reclass/datatypes/parameters.py b/reclass/datatypes/parameters.py
index cc0c74c..29ab5b6 100644
--- a/reclass/datatypes/parameters.py
+++ b/reclass/datatypes/parameters.py
@@ -308,4 +308,4 @@
                 old = len(value.get_references())
                 value.assembleRefs(self._base)
                 if old == len(value.get_references()):
-                    raise InterpolationError('Bad reference count, path:' + repr(path))
+                    raise InterpolationError('Missing references: {0}, for path: {1}'.format(value.get_references(), str(path)))
diff --git a/reclass/datatypes/tests/test_parameters.py b/reclass/datatypes/tests/test_parameters.py
index 376922e..8369ae5 100644
--- a/reclass/datatypes/tests/test_parameters.py
+++ b/reclass/datatypes/tests/test_parameters.py
@@ -8,7 +8,7 @@
 #
 from reclass.datatypes import Parameters
 from reclass.defaults import REFERENCE_SENTINELS, ESCAPE_CHARACTER
-from reclass.errors import InfiniteRecursionError
+from reclass.errors import InfiniteRecursionError, InterpolationError
 from reclass.values.mergeoptions import MergeOptions
 import unittest
 try:
@@ -496,5 +496,12 @@
         self.assertEqual(n1.as_dict(), r1)
         self.assertEqual(n2.as_dict(), r2)
 
+    def test_nested_refs_error_message(self):
+        # beta is missing, oops
+        p1 = Parameters({'alpha': {'one': 1, 'two': 2}, 'gamma': '${alpha:${beta}}'})
+        with self.assertRaises(InterpolationError) as error:
+            p1.interpolate()
+        self.assertEqual(error.exception.message, "Missing references: ['beta'], for path: gamma")
+
 if __name__ == '__main__':
     unittest.main()