diff --git a/tools/aconfig/src/codegen_cpp.rs b/tools/aconfig/src/codegen_cpp.rs index 42d900b348..5aa373aab9 100644 --- a/tools/aconfig/src/codegen_cpp.rs +++ b/tools/aconfig/src/codegen_cpp.rs @@ -151,12 +151,9 @@ mod tests { #ifdef __cplusplus #include -#include namespace com::android::aconfig::test { -extern std::vector cache_; - class flag_provider_interface { public: virtual ~flag_provider_interface() = default; @@ -359,6 +356,7 @@ void com_android_aconfig_test_reset_flags(); const PROD_SOURCE_FILE_EXPECTED: &str = r#" #include "com_android_aconfig_test.h" #include +#include namespace com::android::aconfig::test { @@ -407,10 +405,10 @@ namespace com::android::aconfig::test { return cache_[2]; } + private: + std::vector cache_ = std::vector(3, -1); }; - std::vector cache_ = std::vector(3, -1); - std::unique_ptr provider_ = std::make_unique(); } diff --git a/tools/aconfig/templates/cpp_exported_header.template b/tools/aconfig/templates/cpp_exported_header.template index d19c0faccf..cc1b18d98c 100644 --- a/tools/aconfig/templates/cpp_exported_header.template +++ b/tools/aconfig/templates/cpp_exported_header.template @@ -18,16 +18,9 @@ #ifdef __cplusplus #include -{{ if not for_test- }} -#include -{{ -endif }} namespace {cpp_namespace} \{ -{{ if not for_test- }} -extern std::vector cache_; -{{ -endif }} - class flag_provider_interface \{ public: virtual ~flag_provider_interface() = default; diff --git a/tools/aconfig/templates/cpp_source_file.template b/tools/aconfig/templates/cpp_source_file.template index 91e828aa3c..1bfa4b69b4 100644 --- a/tools/aconfig/templates/cpp_source_file.template +++ b/tools/aconfig/templates/cpp_source_file.template @@ -5,6 +5,8 @@ {{ if for_test }} #include #include +{{ -else- }} +#include {{ endif }} namespace {cpp_namespace} \{ @@ -69,16 +71,15 @@ namespace {cpp_namespace} \{ {{ -endif }} } {{ endfor }} + private: + std::vector cache_ = std::vector({readwrite_count}, -1); }; - std::vector cache_ = std::vector({readwrite_count}, -1); {{ -endif }} std::unique_ptr provider_ = std::make_unique(); - - }