Add MQDescriptorUnsync as a predefined HIDL type.
Bug: 31550963
Test: Used MQDescriptorUnsync in
hardware/interfaces/tests/msgq/1.0/ITestMsgQ.hal, built and
ran the FMQ unit tests.
Change-Id: Ib414d9048fbd3f89cfbbe12d11631716f630979e
diff --git a/hidl-gen_l.ll b/hidl-gen_l.ll
index e2276e7..ce12aa7 100644
--- a/hidl-gen_l.ll
+++ b/hidl-gen_l.ll
@@ -40,6 +40,7 @@
#include "StringType.h"
#include "VectorType.h"
#include "RefType.h"
+#include "PredefinedType.h"
#include "hidl-gen_y.h"
@@ -53,7 +54,7 @@
#define SCALAR_TYPE(kind) \
do { \
yylval->type = new ScalarType(ScalarType::kind); \
- return token::SCALAR; \
+ return token::TYPE; \
} while (0)
#define YY_USER_ACTION yylloc->step(); yylloc->columns(yyleng);
@@ -106,8 +107,11 @@
"float" { SCALAR_TYPE(KIND_FLOAT); }
"double" { SCALAR_TYPE(KIND_DOUBLE); }
-"handle" { yylval->type = new HandleType; return token::SCALAR; }
-"string" { yylval->type = new StringType; return token::SCALAR; }
+"handle" { yylval->type = new HandleType; return token::TYPE; }
+"string" { yylval->type = new StringType; return token::TYPE; }
+
+"MQDescriptorSync" { yylval->type = new PredefinedType("::android::hardware::MQDescriptorSync"); return token::TYPE; }
+"MQDescriptorUnsync" { yylval->type = new PredefinedType("::android::hardware::MQDescriptorUnsync"); return token::TYPE; }
"(" { return('('); }
")" { return(')'); }