Keeping track of imported names, resolve enum storage types, some finetuning.
diff --git a/Type.cpp b/Type.cpp
index 5f3c462..548e425 100644
--- a/Type.cpp
+++ b/Type.cpp
@@ -17,6 +17,10 @@
return false;
}
+const ScalarType *Type::resolveToScalarType() const {
+ return NULL;
+}
+
std::string Type::getCppType(StorageMode, std::string *) const {
CHECK(!"Should not be here");
return std::string();
@@ -64,6 +68,12 @@
out << "if (_aidl_err != ::android::OK) { break; }\n\n";
break;
}
+
+ case ErrorMode_Return:
+ {
+ out << "if (_aidl_err != ::android::OK) { return _aidl_err; }\n\n";
+ break;
+ }
}
}
@@ -74,16 +84,24 @@
out << "goto _aidl_error;\n";
break;
}
+
case ErrorMode_Break:
{
out << "break;\n";
break;
}
+
case ErrorMode_Ignore:
{
out << "/* ignoring _aidl_error! */";
break;
}
+
+ case ErrorMode_Return:
+ {
+ out << "return _aidl_err;\n";
+ break;
+ }
}
}