Check cpp_header for C++/NDK
Unstructured parcelables should have cpp_header for compilation.
Bug: 194846019
Test: atest aidl_unittests
Change-Id: I76c56d3976272f4b401ddc9d8d54fa0e37527400
diff --git a/aidl_language.cpp b/aidl_language.cpp
index 7ea1bb8..76277fd 100644
--- a/aidl_language.cpp
+++ b/aidl_language.cpp
@@ -1215,27 +1215,8 @@
}
// TODO: we should treat every backend all the same in future.
-bool AidlParcelable::LanguageSpecificCheckValid(const AidlTypenames& /*typenames*/,
+bool AidlParcelable::LanguageSpecificCheckValid(const AidlTypenames& typenames,
Options::Language lang) const {
- if (lang == Options::Language::CPP || lang == Options::Language::NDK) {
- const AidlParcelable* unstructured_parcelable = this->AsUnstructuredParcelable();
- if (unstructured_parcelable != nullptr) {
- if (unstructured_parcelable->GetCppHeader().empty()) {
- AIDL_ERROR(unstructured_parcelable)
- << "Unstructured parcelable must have C++ header defined.";
- return false;
- }
- }
- }
- return true;
-}
-
-// TODO: we should treat every backend all the same in future.
-bool AidlStructuredParcelable::LanguageSpecificCheckValid(const AidlTypenames& typenames,
- Options::Language lang) const {
- if (!AidlParcelable::LanguageSpecificCheckValid(typenames, lang)) {
- return false;
- }
for (const auto& v : this->GetFields()) {
if (!v->GetType().LanguageSpecificCheckValid(typenames, lang)) {
return false;
@@ -1400,20 +1381,6 @@
}
// TODO: we should treat every backend all the same in future.
-bool AidlUnionDecl::LanguageSpecificCheckValid(const AidlTypenames& typenames,
- Options::Language lang) const {
- if (!AidlParcelable::LanguageSpecificCheckValid(typenames, lang)) {
- return false;
- }
- for (const auto& v : this->GetFields()) {
- if (!v->GetType().LanguageSpecificCheckValid(typenames, lang)) {
- return false;
- }
- }
- return true;
-}
-
-// TODO: we should treat every backend all the same in future.
bool AidlInterface::LanguageSpecificCheckValid(const AidlTypenames& typenames,
Options::Language lang) const {
for (const auto& m : this->GetMethods()) {