dart-sdk/tests/ffi
Daco Harkes 8218ee0840 [cfe/ffi] Fix Finalizable in for( in ) loops
The `Finalizable` visitor was visiting for-in loops in AST order:
(1) variable, (2) iterable, (3) body. This caused the `variable` to be
fenced in the `iterable` expression. The `variable` should only be
fenced in the `body`.

TEST=tests/ffi/regress_51538_test.dart
TEST=pkg/vm/test/transformations/ffi_test.dart
     with pkg/vm/testcases/transformations/ffi/regress_51538.dart

Closes: https://github.com/dart-lang/sdk/issues/51538
Change-Id: Idacf87b6de3ee0d2d5c6c5046060c55135593fed
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286182
Auto-Submit: Daco Harkes <dacoharkes@google.com>
Commit-Queue: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Slava Egorov <vegorov@google.com>
2023-03-02 09:05:19 +00:00
..
generator [vm/ffi] Fix @Natives with VarArgs 2023-03-01 09:08:31 +00:00
native_assets [test/ffi] @Native assets test AOT with --strip 2023-02-15 13:21:36 +00:00
abi_specific_int_incomplete_aot_test.dart [vm/ffi] ABI-specific integers 2021-12-16 22:07:00 +00:00
abi_specific_int_incomplete_jit_test.dart [vm/ffi] Ensure there's a single Function object per ffi-callback + exceptional-return combination 2022-12-07 20:47:13 +00:00
abi_specific_int_test.dart Reland "[vm/ffi] Add common C types" 2022-01-27 13:09:01 +00:00
abi_test.dart [vm/ffi] Introduce Abi 2021-12-01 19:19:37 +00:00
aliasing_test.dart
all_positive.dart
allocator_test.dart
analysis_options.yaml [tests/ffi] Folder deletion on Windows 2023-01-24 16:15:21 +00:00
bool_test.dart [vm/ffi] Add Bool 2021-10-18 10:44:11 +00:00
c_types_test.dart [vm/ffi] Add Char C type 2022-03-28 09:46:56 +00:00
callback_tests_utils.dart [3.0 alpha] Use equals for default values in the SDK 2022-11-30 10:33:31 +00:00
calloc_test.dart
coordinate.dart
coordinate_nnbd_workaround.dart
data_not_asan_test.dart [deps] Roll package:ffi to 2.0.1 2022-06-19 18:29:11 +00:00
data_test.dart [vm/ffi] Stop reifying type argument in Pointer 2022-11-28 09:45:45 +00:00
dylib_isolates_test.dart
dylib_utils.dart [vm/ffi] Fix @Natives with VarArgs 2023-03-01 09:08:31 +00:00
expando_test.dart
extension_methods_test.dart [ffi] Add .ref= setter for pointers of structs or unions 2022-01-12 20:48:28 +00:00
external_typed_data_test.dart
ffi.status [test/ffi] Skip self-invoking tests in appjit 2023-02-06 19:11:47 +00:00
ffi_callback_unique_test.dart [vm/ffi] Ensure there's a single Function object per ffi-callback + exceptional-return combination 2022-12-07 20:47:13 +00:00
ffi_native_test.dart [cfe/ffi] Transform FfiNatives in a single pass 2022-07-08 12:36:09 +00:00
ffi_test_helpers.dart [vm] Implement NativeFinalizer 2022-03-26 09:41:21 +00:00
finalizer_external_size_accounting_test.dart [vm, gc] Add missing promotion of Finalizer external size. Remove race incrementing external size. 2022-11-30 17:14:59 +00:00
function_callbacks_many_test.dart
function_callbacks_structs_by_value_generated_test.dart Spelling runtime bin 2023-01-06 07:48:22 +00:00
function_callbacks_structs_by_value_test.dart Spelling tools 2023-01-09 15:48:57 +00:00
function_callbacks_test.dart [vm] Support serialization of FFI callbacks in IL serialization 2022-08-26 17:37:21 +00:00
function_callbacks_varargs_generated_test.dart [vm/ffi] Support varargs 2023-01-20 10:30:41 +00:00
function_callbacks_very_many_test.dart [tests] Avoid small --optimization-counter-threshold in tests 2022-10-10 21:04:18 +00:00
function_structs_by_value_generated_args_leaf_test.dart [ffi/tests] Split large auto-generated tests into multiple tests 2022-10-20 22:08:53 +00:00
function_structs_by_value_generated_args_native_leaf_test.dart [test/ffi] Beef up @Native testing 2023-02-24 21:16:50 +00:00
function_structs_by_value_generated_args_native_test.dart [test/ffi] Beef up @Native testing 2023-02-24 21:16:50 +00:00
function_structs_by_value_generated_args_test.dart [ffi/tests] Split large auto-generated tests into multiple tests 2022-10-20 22:08:53 +00:00
function_structs_by_value_generated_compounds.dart Reland "[vm/ffi] Add common C types" 2022-01-27 13:09:01 +00:00
function_structs_by_value_generated_ret_arg_leaf_test.dart [ffi/tests] Split large auto-generated tests into multiple tests 2022-10-20 22:08:53 +00:00
function_structs_by_value_generated_ret_arg_native_leaf_test.dart [test/ffi] Beef up @Native testing 2023-02-24 21:16:50 +00:00
function_structs_by_value_generated_ret_arg_native_test.dart [test/ffi] Beef up @Native testing 2023-02-24 21:16:50 +00:00
function_structs_by_value_generated_ret_arg_test.dart [ffi/tests] Split large auto-generated tests into multiple tests 2022-10-20 22:08:53 +00:00
function_structs_by_value_generated_ret_leaf_test.dart Spelling runtime bin 2023-01-06 07:48:22 +00:00
function_structs_by_value_generated_ret_native_leaf_test.dart [test/ffi] Beef up @Native testing 2023-02-24 21:16:50 +00:00
function_structs_by_value_generated_ret_native_test.dart [test/ffi] Beef up @Native testing 2023-02-24 21:16:50 +00:00
function_structs_by_value_generated_ret_test.dart Spelling runtime bin 2023-01-06 07:48:22 +00:00
function_structs_test.dart [3.0 alpha] Use equals for default values in the SDK 2022-11-30 10:33:31 +00:00
function_test.dart [vm/ffi] Adds param number in trampoline null error 2021-09-04 07:22:03 +00:00
function_varargs_generated_leaf_test.dart [vm/ffi] Support varargs 2023-01-20 10:30:41 +00:00
function_varargs_generated_native_leaf_test.dart [vm/ffi] Fix @Natives with VarArgs 2023-03-01 09:08:31 +00:00
function_varargs_generated_native_test.dart [vm/ffi] Fix @Natives with VarArgs 2023-03-01 09:08:31 +00:00
function_varargs_generated_test.dart [vm/ffi] Support varargs 2023-01-20 10:30:41 +00:00
function_varargs_name_test.dart [vm/ffi] Support varargs 2023-01-20 10:30:41 +00:00
function_varargs_test.dart [vm/ffi] Support varargs 2023-01-20 10:30:41 +00:00
function_very_many_test.dart
hardfp_test.dart
has_symbol_test.dart [vm/ffi] Support DynamicLibrary.process() on Windows 2022-09-27 08:42:03 +00:00
inline_array_multi_dimensional_test.dart [test/ffi] Split generated files on isLeaf 2021-10-14 13:05:33 +00:00
inline_array_test.dart [test/ffi] Split generated files on isLeaf 2021-10-14 13:05:33 +00:00
native_effect_test.dart
negative_function_test.dart
regress_37254_test.dart [vm/ffi] Stop reifying type argument in Pointer 2022-11-28 09:45:45 +00:00
regress_39044_test.dart
regress_39063_test.dart [test/ffi] Fix errors in tests 2021-09-28 13:17:01 +00:00
regress_39885_test.dart
regress_40537_test.dart Fixed various typos in a lot of files 2022-07-25 12:21:59 +00:00
regress_43016_test.dart [tests] Avoid small --optimization-counter-threshold in tests 2022-10-10 21:04:18 +00:00
regress_43693_test.dart
regress_44985_test.dart
regress_44986_test.dart
regress_45189_test.dart
regress_45198_test.dart
regress_45507_test.dart
regress_45988_test.dart
regress_46004_test.dart
regress_46085_test.dart
regress_46127_test.dart
regress_47594_test.dart [test] Avoid tests fighting over the default service port. 2022-11-10 17:28:48 +00:00
regress_47673_2_test.dart [cfe/ffi] Handle invalid types in Array 2021-11-19 13:38:47 +00:00
regress_47673_test.dart [cfe/ffi] Handle invalid types in Array 2021-11-19 13:38:47 +00:00
regress_49402_test.dart [vm/ffi] Fix constant Finalizables 2022-07-07 08:39:21 +00:00
regress_49684_test.dart [analyzer/ffi] Fix FfiNative Pointer params 2022-09-27 15:58:16 +00:00
regress_51041_test.dart Reland "[vm/ffi] Disallow nullable struct fields" 2023-02-16 11:26:38 +00:00
regress_51315_test.dart [vm/ffi] Fix MemoryCopyInstr on ia32 2023-02-14 13:20:43 +00:00
regress_51321_test.dart [vm/ffi] Fix Struct use in @Natives 2023-02-13 09:40:24 +00:00
regress_51504_test.dart [test/ffi] Fix test use RTLD_GLOBAL on Android 2023-03-01 10:24:24 +00:00
regress_51538_2_test.dart [cfe/ffi] Fix Finalizable in for( in ) loops 2023-03-02 09:05:19 +00:00
regress_51538_3_test.dart [cfe/ffi] Fix Finalizable in for( in ) loops 2023-03-02 09:05:19 +00:00
regress_51538_test.dart [cfe/ffi] Fix Finalizable in for( in ) loops 2023-03-02 09:05:19 +00:00
regress_b_261224444_test.dart [test/ffi] Free pointer allocated via malloc 2022-12-13 16:41:47 +00:00
regress_flutter79441_test.dart
regress_flutter97301_test.dart [vm/test] Fix memory leak in ffi/regress_flutter97301_test 2022-02-03 00:28:55 +00:00
regress_jump_to_frame_test.dart
sizeof_test.dart
snapshot_test.dart [vm/concurrency] Remove --(no-)enable-isolate-groups flag usage in tests 2021-11-04 18:57:21 +00:00
stacktrace_regress_37910_test.dart
structs_nested_test.dart
structs_nnbd_workaround_test.dart
structs_packed_test.dart [test/ffi] Split generated files on isLeaf 2021-10-14 13:05:33 +00:00
structs_test.dart
unaligned_test.dart
variance_function_test.dart [vm/ffi] Stop reifying type argument in Pointer 2022-11-28 09:45:45 +00:00
very_large_struct.dart
vmspecific_dynamic_library_test.dart [vm/ffi] Support DynamicLibrary.process() on Windows 2022-09-27 08:42:03 +00:00
vmspecific_enable_ffi_test.dart
vmspecific_ffi_native_test.dart Spelling sdk 2023-01-20 12:37:49 +00:00
vmspecific_function_callbacks_exit_test.dart
vmspecific_function_callbacks_negative_test.dart
vmspecific_function_callbacks_test.dart [vm/concurrency] Remove --(no-)enable-isolate-groups flag usage in tests 2021-11-04 18:57:21 +00:00
vmspecific_function_gc_test.dart
vmspecific_function_test.dart [test/ffi] Fix errors in tests 2021-09-28 13:17:01 +00:00
vmspecific_handle_dynamically_linked_test.dart [vm] Fix Dart_CObject_Type breaking change 2023-02-20 11:59:19 +00:00
vmspecific_handle_test.dart Reland "[vm/ffi] Throw on returning Error in Handle" 2022-10-03 12:25:08 +00:00
vmspecific_highmem_32bit_test.dart [test/ffi] Fix errors in tests 2021-09-28 13:17:01 +00:00
vmspecific_leaf_call_test.dart [test/ffi] Fix errors in tests 2021-09-28 13:17:01 +00:00
vmspecific_native_finalizer_2_test.dart [vm] Implement NativeFinalizer 2022-03-26 09:41:21 +00:00
vmspecific_native_finalizer_isolate_groups_test.dart [vm] Implement NativeFinalizer 2022-03-26 09:41:21 +00:00
vmspecific_native_finalizer_isolates_test.dart [vm] Fill in ArgumentValue.invalidObject when objects are rejected in isolate messages. 2022-10-24 17:49:29 +00:00
vmspecific_native_finalizer_test.dart [vm] Implement NativeFinalizer 2022-03-26 09:41:21 +00:00
vmspecific_object_gc_test.dart
vmspecific_regress_37100_test.dart
vmspecific_regress_37511_callbacks_test.dart
vmspecific_regress_37511_test.dart
vmspecific_regress_37780_test.dart
vmspecific_regress_38993_test.dart
vmspecific_send_port_id_test.dart
vmspecific_static_checks_ffinative_test.dart Reland "[cfe/ffi] Improve FFI call mismatched types compile errors" 2022-08-01 16:09:03 +00:00
vmspecific_static_checks_test.dart Reland "[cfe/ffi] Improve FFI call mismatched types compile errors" 2022-08-01 16:09:03 +00:00
vmspecific_static_checks_varargs_test.dart [vm/ffi] Support varargs 2023-01-20 10:30:41 +00:00
vmspecific_variance_function_checks_test.dart Fix typos 2022-09-16 19:35:00 +00:00