• Home
Name Date Size #Lines LOC

..--

README.mdD22-Oct-2025783 1711

a.cppD22-Oct-20252 KiB8655

a.hD22-Oct-20251.2 KiB5431

b.cppD22-Oct-20252.3 KiB9663

b.hD22-Oct-20251.2 KiB5432

main.cppD22-Oct-20253.1 KiB8865

README.md

1# cdtors
2
3## Task
4
5Ensure for constructors and destructors of shared libraries:
6
7- they are called
8- expected call effects are observable
9- launched in the orinal order (TBD)
10
11## Note
12
13- Commonly `.preinit_array`/`.init`/`.init_array` sections are used for shared object initialization; and `.fini`/`.fini_array` are for finalization
14- musl ARM/AArch64 supports only execution of `.init_array`/`.fini_array` sections
15  - follow `NO_LEGACY_INITFINI` macro in https://gitee.com/openharmony/third_party_musl/commit/1da53dad278f98b7712ac002162afaa8815ba580
16- only one of init_array sections gets executed, usually the one of last linked lib. This results in init_X_N constructors being ignored for all other linked libs thus giving some subtest failures. This can only be fixed in musl.
17