Comments (4)
It appears that memcpy() and memmove() are aliases on Lion:
$ nm /usr/lib/system/libsystem_c.dylib | grep "memcpy\|memmove"
0000000000013830 T ___memcpy_chk
000000000001381c T ___memmove_chk
00000000000a1969 T _memcpy
0000000000027ebd t _memcpy$VARIANT$sse3x
0000000000027cbd t _memcpy$VARIANT$sse42
00000000000e0af0 d _memcpy_platfunc_descriptors
000000000009ea1a T _memmove
0000000000027ebd t _memmove$VARIANT$sse3x
0000000000027cbd t _memmove$VARIANT$sse42
00000000000e0ab0 d _memmove_platfunc_descriptors
00000000000e19f0 s _platfunc_memcpy$VARIANT$sse3x
00000000000e19c0 s _platfunc_memcpy$VARIANT$sse42
00000000000e1a00 s _platfunc_memmove$VARIANT$sse3x
00000000000e19d0 s _platfunc_memmove$VARIANT$sse42
00000000000295a5 T _wmemcpy
0000000000006793 T _wmemmove
Therefore we're wrapping the same function twice, so for both memcpy() and memmove()
we're calling wrap_memcpy() => wrap_memmove() => original function.
To fix this we should just wrap memmove() and forget about memcpy-param-overlap errors.
See also https://bugzilla.mozilla.org/show_bug.cgi?id=715750 and http://code.google.com/p/valgrind-variant/issues/detail?id=5
Reported by ramosian.glider
on 2012-01-31 11:30:33
from sanitizers.
Fixed in clang:r149492
Reported by ramosian.glider
on 2012-02-01 10:13:01
from sanitizers.
Reported by ramosian.glider
on 2012-02-01 10:13:15
- Status changed:
Fixed
from sanitizers.
Adding Project:AddressSanitizer as part of GitHub migration.
Reported by ramosian.glider
on 2015-07-30 09:12:58
- Labels added: ProjectAddressSanitizer
from sanitizers.
Related Issues (20)
- The program compiled and run with lsan alone reports an error. HOT 3
- The error content of `AddressSanitizerComparisonOfMemoryTools` page
- ASan: please add option to suppress details on indirect leaks HOT 3
- TSAN segmentation fault on AlpineLinux
- ASAN_OPTIONS=log_to_syslog=true leads to deadlock HOT 1
- How to deal with this problem? HOT 1
- Thread Sanitizer FATAL error on kernel version 6.6.6-x HOT 21
- TSAN: False positive lock-order-inversion from memory reuse
- TSAN: potential false positive in simple lockfree stack HOT 6
- LSan API doesn't allow control of child threads
- allocator_may_return_null=1 does not seem to work, hindering fuzzing for security issues
- AddressSanitizer: SEGV in malloc_trim
- can not be detected by asan HOT 5
- TestCases/stack-uas.c occasionally misclassified as stack-buffer-overflow
- Empty code randomly crashes with SEGV on unknown address HOT 5
- MSAN+libfuzzer reports error in libfuzzer code with '-jobs=X' (Uninitialized bytes in fputs) HOT 1
- Suppressing "heap-use-after-free" does not work in called functions
- What is -[ClassName objCMethodToSuppress:]??? HOT 1
- TSAN_OPTIONS="log_path=/var/log/xxxx_tsan" doesn't work, the logs still print on stdout
- [tsan] False positive when reading from a pipe in io_uring
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sanitizers.