libvintf: use toFQNameString

Centralize the hard-coded "@" "::" "/".

Test: builds
Test: libvintf_test
Test: vintf_object_test
Change-Id: I1942441865585b11801e7d9b38c0c57b5c5ebe17
diff --git a/CompatibilityMatrix.cpp b/CompatibilityMatrix.cpp
index 7bdc3a9..deb1fa1 100644
--- a/CompatibilityMatrix.cpp
+++ b/CompatibilityMatrix.cpp
@@ -16,13 +16,12 @@
 
 #include "CompatibilityMatrix.h"
 
+#include <iostream>
 #include <utility>
 
 #include "parse_string.h"
-#include "utils.h"
-
-#include <iostream>
 #include "parse_xml.h"
+#include "utils.h"
 
 namespace android {
 namespace vintf {
@@ -129,7 +128,7 @@
 
             if (!existingHal->optional && !existingHal->containsInstances(halToAdd)) {
                 if (error != nullptr) {
-                    *error = "HAL " + name + "@" + to_string(vr.minVer()) + " is a required " +
+                    *error = "HAL " + toFQNameString(name, vr.minVer()) + " is a required " +
                              "HAL, but fully qualified instance names don't match (at FCM "
                              "Version " +
                              std::to_string(level()) + " and " + std::to_string(other->level()) +