libltdl: Skip sanitization of function for newer clang versions

Using a clang version >= 20 finds sanitization issues that the
earlier clang version did not find.

ltdl.c:189:16: runtime error: call to function preopen_LTX_get_vtable through pointer to incorrect function type 'const lt_dlvtable *(*)(void *)'
/home/runner/work/ci-check/ci-check/libtool-2026-08-12/build/tests/testsuite.dir/113/libltdl/loaders/preopen.c:60: note: preopen_LTX_get_vtable defined here
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior ltdl.c:189:16

This is a temporary fix until the function prototype is fixed.

* libltdl/ltdl.c: Skip sanitization of function for clang versions that
  are greater than or equal to 20.
* libltdl/ltdl.mk: Bump minor version.
diff --git a/libltdl/ltdl.c b/libltdl/ltdl.c
index c92e259..bed91b8 100644
--- a/libltdl/ltdl.c
+++ b/libltdl/ltdl.c
@@ -178,6 +178,10 @@
 }
 #endif /* HAVE_LIBDLLOADER */
 
+// TODO: fix the clang sanitization issue with the function's prototype
+#if defined __clang__ && __clang_major__ >= 20
+  __attribute__ ((no_sanitize ("function")))
+#endif
 static int
 loader_init (lt_get_vtable *vtable_func, lt_user_data data)
 {
diff --git a/libltdl/ltdl.mk b/libltdl/ltdl.mk
index e69e011..d74ed2e 100644
--- a/libltdl/ltdl.mk
+++ b/libltdl/ltdl.mk
@@ -35,7 +35,7 @@
 			  -I$(srcdir)/libltdl -Ilibltdl/libltdl \
 			  -I$(srcdir)/libltdl/libltdl
 AM_LDFLAGS	       += -no-undefined
-LTDL_VERSION_INFO	= -version-info 10:6:3
+LTDL_VERSION_INFO	= -version-info 10:7:3
 
 noinst_LTLIBRARIES	+= $(LT_DLLOADERS)