21 lines · plain
1{2 /* Symbols to be exported are selected based on mangled names rather than */3 /* the demangled names provided by the `extern "C++"` matcher because it is */4 /* easy to express "export everything defined in the sycl namespace" using */5 /* the former. Matching demangled names is more complicated in the presence */6 /* of examples like: */7 /* "vtable for sycl::foo" (should be exported) */8 /* "vtable for std::__internal<sycl::foo>" (should not be exported) */9 10 global:11 /* Export everything from sycl namespace */12 _ZNK4sycl*; /* function */13 _ZN4sycl*; /* function */14 _ZTIN4sycl*; /* typeinfo */15 _ZTSN4sycl*; /* typeinfo name */16 _ZTVN4sycl*; /* vtable */17 18 local:19 *;20};21