facebook / facebook/folly

[MSVC] A large number of tests failed after building with Address Sanitizers

Open
#2,382 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
30.5k
Forks
5.9k
PR merge metrics
No merged PRs in 30d

Description

Hi, I work on Microsoft Visual C++ testing, where we regularly build popular open-source projects, including Folly, with development builds of our compiler and libraries with some particular cl options such as /fsanitize=address.

This issue is only occurring when building with /fsanitize=address, if there are no plans to support /fsanitize=address it in the future, feel free to close this issue.

A large number of test failed after building with Address Sanitizers.

Repro Step:

1. open x64 native tools command prompt for VS2022
2. git clone https://github.com/facebook/folly.git
3. set VSCMD_SKIP_SENDTELEMETRY=1 & "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\Tools\VsDevCmd.bat" -host_arch=amd64 -arch=amd64 & set \_CL\_= /fsanitize=address /GS- /wd5072 & set \_LINK\_= /InferASanLibs /incremental:no /debug
4. mkdir facebook\folly\build_amd64 & cd facebook\folly\build_amd64
5. cmake -G Ninja -DCMAKE_TOOLCHAIN_FILE=C:\gitP\Microsoft\vcpkg\scripts\buildsystems\vcpkg.cmake -DVCPKG_TARGET_TRIPLET=x64-windows -DBUILD_SHARED_LIBS=OFF -DBUILD_TESTS=ON -DCMAKE_BUILD_TYPE=RELEASE ..
6. ninja -v
7. ctest --build-config Release --output-on-failure
Build log: [Build (3).log](https://github.com/user-attachments/files/18797227/Build.3.log)
Full test log: [Test.log.5.txt](https://github.com/user-attachments/files/18797240/Test.log.5.txt)

Contributor guide

Open the contributing guide

Research direction

Reproduce the x64 Windows build using the listed VS2022, CMake, Ninja, vcpkg, and AddressSanitizer settings, then inspect Build (3).log and Test.log.5.txt to identify which tests fail and whether the failures are Folly defects or unsupported MSVC AddressSanitizer behavior; done means the cause is established and the affected test suite passes or the limitation is documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake, cpp
Domain
build-system, testing-qa
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.