Add a typeName() method to each type for error printing purposes.

Test: compiles with mma
Change-Id: I1283c395440282fde1106ad47aa185bdeda75880
diff --git a/ScalarType.h b/ScalarType.h
index f7890f5..d1e40b5 100644
--- a/ScalarType.h
+++ b/ScalarType.h
@@ -41,6 +41,7 @@
 
     const ScalarType *resolveToScalarType() const override;
 
+    std::string typeName() const override;
     bool isValidEnumStorageType() const;
 
     void addNamedTypesToSet(std::set<const FQName> &set) const override;