# Manifest of Leaking Files

# This file was auto-generated using api_leak_detector.py.

_ITM_RU1
_ITM_RU8
_ITM_addUserCommitAction
_ITM_deregisterTMCloneTable
_ITM_memcpyRnWt
_ITM_memcpyRtWn
_ITM_registerTMCloneTable
_Unwind_DeleteException
_Unwind_GetDataRelBase
_Unwind_GetIPInfo
_Unwind_GetLanguageSpecificData
_Unwind_GetRegionStart
_Unwind_GetTextRelBase
_Unwind_RaiseException
_Unwind_Resume
_Unwind_Resume_or_Rethrow
_Unwind_SetGR
_Unwind_SetIP
__ctype_get_mb_cur_max
__ctype_toupper_loc
__cxa_atexit
__cxa_finalize
__duplocale
__errno_location
__freelocale
__fxstat64
__gmon_start__
__isoc99_sscanf
__iswctype_l
__libc_start_main
__newlocale
__nl_langinfo_l
__strcoll_l
__strftime_l
__strtod_l
__strtof_l
__strxfrm_l
__tls_get_addr
__towlower_l
__towupper_l
__umodti3
__uselocale
__wcscoll_l
__wcsftime_l
__wcsxfrm_l
__wctype_l
__xstat
_setjmp
abort
bcmp
bind_textdomain_codeset
bindtextdomain
btowc
dgettext
exit
fclose
fdopen
fflush
fileno
fopen64
fprintf
fputc
fputs
fread
fseeko64
ftello64
fwrite
getc
gettext
getwc
iconv
iconv_close
iconv_open
ioctl
isalpha
isprint
iswspace
longjmp
lseek64
mbrtowc
mbsnrtowcs
mbsrtowcs
memrchr
open
poll
printf
pthread_getspecific
pthread_key_create
pthread_key_delete
pthread_setspecific
putc
putwc
read
setlocale
setvbuf
stderr
stdin
stdout
strdup
strerror
strtold_l
syscall
ungetc
ungetwc
vsprintf
wcrtomb
wcscmp
wcsnrtombs
wctob
write
writev
