mirror of
https://github.com/dart-lang/sdk
synced 2024-09-16 02:17:14 +00:00
08b57e0457
Android arm has a different const for `RTLD_GLOBAL` which we take care of in the helper function `dlopenGlobalPlatformSpecific`. So use that instead. Change-Id: Icb5d0b84f7d76ec1f6e24d43a644cffe8f46fd42 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/286140 Reviewed-by: Martin Kustermann <kustermann@google.com> Commit-Queue: Daco Harkes <dacoharkes@google.com> Auto-Submit: Daco Harkes <dacoharkes@google.com> Commit-Queue: Martin Kustermann <kustermann@google.com>
32 lines
945 B
Dart
32 lines
945 B
Dart
// Copyright (c) 2023, the Dart project authors. Please see the AUTHORS file
|
|
// for details. All rights reserved. Use of this source code is governed by a
|
|
// BSD-style license that can be found in the LICENSE file.
|
|
|
|
// SharedObjects=ffi_test_functions
|
|
|
|
// VMOptions=--enable-experiment=records
|
|
|
|
import 'dart:ffi';
|
|
import 'dart:io';
|
|
|
|
import 'package:expect/expect.dart';
|
|
import 'package:ffi/ffi.dart';
|
|
|
|
import 'dylib_utils.dart';
|
|
|
|
final ffiTestFunctions = dlopenPlatformSpecific('ffi_test_functions');
|
|
|
|
void main() {
|
|
dlopenGlobalPlatformSpecific('ffi_test_functions');
|
|
|
|
testVariadicAt1Int64x5NativeLeaf();
|
|
}
|
|
|
|
@Native<Int64 Function(Int64, VarArgs<(Int64, Int64, Int64, Int64)>)>(symbol: 'VariadicAt1Int64x5', isLeaf:true)
|
|
external int variadicAt1Int64x5NativeLeaf(int a0, int a1, int a2, int a3, int a4);
|
|
|
|
void testVariadicAt1Int64x5NativeLeaf() {
|
|
final result = variadicAt1Int64x5NativeLeaf(1, 2, 3, 4, 5);
|
|
Expect.equals(15, result);
|
|
}
|