Use `final` for template tests. Where these tests pass or return a templated type by value, they're going to break as I implement full support for `!Unpin` by-value return and parameter types. PiperOrigin-RevId: 460317001
diff --git a/rs_bindings_from_cc/test/templates/bridging/class_template_definition.h b/rs_bindings_from_cc/test/templates/bridging/class_template_definition.h index 8f5106d..c5840f0 100644 --- a/rs_bindings_from_cc/test/templates/bridging/class_template_definition.h +++ b/rs_bindings_from_cc/test/templates/bridging/class_template_definition.h
@@ -8,7 +8,7 @@ #pragma clang lifetime_elision template <typename T> -class MyTemplate { +class MyTemplate final { public: static MyTemplate Create(T value) { MyTemplate result;
diff --git a/rs_bindings_from_cc/test/templates/definition_in_cc/definition_in_cc.h b/rs_bindings_from_cc/test/templates/definition_in_cc/definition_in_cc.h index 00bb591..82c6f42 100644 --- a/rs_bindings_from_cc/test/templates/definition_in_cc/definition_in_cc.h +++ b/rs_bindings_from_cc/test/templates/definition_in_cc/definition_in_cc.h
@@ -8,7 +8,7 @@ #pragma clang lifetime_elision template <typename T> -class MyTemplate { +class MyTemplate final { public: static MyTemplate Create(T value); const T& value() const;
diff --git a/rs_bindings_from_cc/test/templates/func_return_and_param_types/func_return_and_param_types.h b/rs_bindings_from_cc/test/templates/func_return_and_param_types/func_return_and_param_types.h index eaccb95..36f1382 100644 --- a/rs_bindings_from_cc/test/templates/func_return_and_param_types/func_return_and_param_types.h +++ b/rs_bindings_from_cc/test/templates/func_return_and_param_types/func_return_and_param_types.h
@@ -8,7 +8,7 @@ #pragma clang lifetime_elision template <typename T> -class MyTemplate { +class MyTemplate final { public: static MyTemplate Create(T value) { MyTemplate result;
diff --git a/rs_bindings_from_cc/test/templates/method_params/method_params.h b/rs_bindings_from_cc/test/templates/method_params/method_params.h index 5ef6af7..26733ac 100644 --- a/rs_bindings_from_cc/test/templates/method_params/method_params.h +++ b/rs_bindings_from_cc/test/templates/method_params/method_params.h
@@ -8,7 +8,7 @@ #pragma clang lifetime_elision template <typename T> -class MyTemplate { +class MyTemplate final { public: static MyTemplate Create(T value) { MyTemplate result;
diff --git a/rs_bindings_from_cc/test/templates/no_instantiation_in_template_target/template_without_instantiation.h b/rs_bindings_from_cc/test/templates/no_instantiation_in_template_target/template_without_instantiation.h index ba97a74..5033034 100644 --- a/rs_bindings_from_cc/test/templates/no_instantiation_in_template_target/template_without_instantiation.h +++ b/rs_bindings_from_cc/test/templates/no_instantiation_in_template_target/template_without_instantiation.h
@@ -10,7 +10,7 @@ // This template is not instantiated anywhere in this header file // (this is what the test scenario exercised here cares about). template <typename T> -class MyTemplate { +class MyTemplate final { public: static MyTemplate Create(T value) { MyTemplate result;
diff --git a/rs_bindings_from_cc/test/templates/non_type_template_params/non_type_template_params.h b/rs_bindings_from_cc/test/templates/non_type_template_params/non_type_template_params.h index 67afd7e..1b623f6 100644 --- a/rs_bindings_from_cc/test/templates/non_type_template_params/non_type_template_params.h +++ b/rs_bindings_from_cc/test/templates/non_type_template_params/non_type_template_params.h
@@ -8,7 +8,7 @@ #pragma clang lifetime_elision template <int multiplier> -class MyTemplate { +class MyTemplate final { public: static int Multiply(int value) { return value * multiplier; } };
diff --git a/rs_bindings_from_cc/test/templates/out_of_line_definition/out_of_line_definition.h b/rs_bindings_from_cc/test/templates/out_of_line_definition/out_of_line_definition.h index ab21f17..0adc65a 100644 --- a/rs_bindings_from_cc/test/templates/out_of_line_definition/out_of_line_definition.h +++ b/rs_bindings_from_cc/test/templates/out_of_line_definition/out_of_line_definition.h
@@ -8,7 +8,7 @@ #pragma clang lifetime_elision template <typename T> -class MyTemplate { +class MyTemplate final { public: static MyTemplate Create(T value); const T& value() const;
diff --git a/rs_bindings_from_cc/test/templates/two_template_parameters/two_template_parameters.h b/rs_bindings_from_cc/test/templates/two_template_parameters/two_template_parameters.h index 02e47e0..0252d36 100644 --- a/rs_bindings_from_cc/test/templates/two_template_parameters/two_template_parameters.h +++ b/rs_bindings_from_cc/test/templates/two_template_parameters/two_template_parameters.h
@@ -8,7 +8,7 @@ #pragma clang lifetime_elision template <typename T1, typename T2> -struct TemplateWithTwoParams { +struct TemplateWithTwoParams final { T1 value1; T2 value2; };
diff --git a/rs_bindings_from_cc/test/templates/type_alias/type_alias.h b/rs_bindings_from_cc/test/templates/type_alias/type_alias.h index e55d96d..730acab 100644 --- a/rs_bindings_from_cc/test/templates/type_alias/type_alias.h +++ b/rs_bindings_from_cc/test/templates/type_alias/type_alias.h
@@ -8,7 +8,7 @@ #pragma clang lifetime_elision template <typename T> -class MyTemplate { +class MyTemplate final { public: static MyTemplate Create(T value) { MyTemplate result;