1 // SPDX-License-Identifier: GPL-2.0
8 #include "demangle-ocaml.h"
10 static int test__demangle_ocaml(struct test_suite
*test __maybe_unused
, int subtest __maybe_unused
)
17 const char *mangled
, *demangled
;
21 { "camlStdlib__array__map_154",
22 "Stdlib.array.map_154" },
23 { "camlStdlib__anon_fn$5bstdlib$2eml$3a334$2c0$2d$2d54$5d_1453",
24 "Stdlib.anon_fn[stdlib.ml:334,0--54]_1453" },
25 { "camlStdlib__bytes__$2b$2b_2205",
26 "Stdlib.bytes.++_2205" },
29 for (i
= 0; i
< ARRAY_SIZE(test_cases
); i
++) {
30 buf
= ocaml_demangle_sym(test_cases
[i
].mangled
);
31 if ((buf
== NULL
&& test_cases
[i
].demangled
!= NULL
)
32 || (buf
!= NULL
&& test_cases
[i
].demangled
== NULL
)
33 || (buf
!= NULL
&& strcmp(buf
, test_cases
[i
].demangled
))) {
34 pr_debug("FAILED: %s: %s != %s\n", test_cases
[i
].mangled
,
35 buf
== NULL
? "(null)" : buf
,
36 test_cases
[i
].demangled
== NULL
? "(null)" : test_cases
[i
].demangled
);
45 DEFINE_SUITE("Demangle OCaml", demangle_ocaml
);