Recommendations for which sanitizers to enable
還沒有人認領這個 Issue。
評估
- 難度
- 4/5
- 預估耗時
- 3-5 天
- 新手友好度
- 35/100
- Issue 類型
- 文件
- 描述清晰度
- 需要釐清
- 活躍度
- 停滯
- 技術堆疊
- cpp
研究方向
首先,將所引用的 Sanitizers.def 檔案中的 sanitizer 分組與 AddressSanitizer、ThreadSanitizer、MemorySanitizer、UndefinedBehaviorSanitizer、DataFlowSanitizer、LeakSanitizer、Control Flow Integrity 和 Safe Stack 的文件進行比較。釐清有關一律啟用的測試、CI 和 live-testing 建置的建議,包括相關 flags、環境變數和平台限制。完成的標準是 issue 中包含一份簡潔且立場明確的參考資料,涵蓋這些問題。
由索引模型根據 Issue 內容生成。
描述
As time passes, the g++/clang++ gain more new sanitizers, existing ones get better, and some get ported to new platforms (e.g. recently leak support was added to OS X in clang++ 5).
Similar to #37 for warnings, This ticket can serve as a central place to start documenting a recommended list of sanitizer flags to use. I intend this to be a quick, opinionated reference to check before you would dive deeper into docs like https://clang.llvm.org/docs/UndefinedBehaviorSanitizer.html.
The relevant questions I see are:
- 🍇 Which sanitizers should we always test with?
- 🍊 Which additional flags or environment variables should we use?
- 🍏 Which additional flags should be used when testing the sanitizers on CI systems?
- 🍎 Which additional flags should be used when building sanitized binaries for live testing?
Refs:
- source of truth for which sanitizers are in which groupings:
- Docs for HEAD llvm for sanitizers:
- Address: https://clang.llvm.org/docs/AddressSanitizer.html
- Thread: https://clang.llvm.org/docs/ThreadSanitizer.html
- Memory: https://clang.llvm.org/docs/MemorySanitizer.html
- UndefinedBehavior: https://clang.llvm.org/docs/UndefinedBehaviorSanitizer.html
- DataFlow: https://clang.llvm.org/docs/DataFlowSanitizer.html
- Leak: https://clang.llvm.org/docs/LeakSanitizer.html
- Control Flow Integrity: https://clang.llvm.org/docs/ControlFlowIntegrity.html
- Safe Stack: https://clang.llvm.org/docs/SafeStack.html
- 主要語言
- 沒有語言資料
- 星號
- 110
- 分支
- 17
- PR 合併指標
- 30 天內沒有已合併 PR
貢獻指南
從這裡開始
- 先讀完整個 Issue,再讀專案的貢獻指南。
- 在 Issue 下留言說明你要接手 —— 這能避免兩個人做同樣的事。
- Fork 儲存庫,在一個分支上完成修改。
- 送出 Pull Request,並在描述裡引用這個 Issue 編號。
mapbox/cpp 的其他 Issue
-
glossary
難度 1/5 1 小時以內 新手友好度 68/100
-
難度 3/5 1-2 天 新手友好度 25/100
-
Docs on ABIs 未關閉
難度 4/5 3-5 天 新手友好度 30/100
-
難度 5/5 一週以上 新手友好度 30/100
-
難度 3/5 1-2 天 新手友好度 35/100
相似的 Issue
-
documentation
難度 2/5 1-3 小時 新手友好度 88/100
githubnext/gh-aw-workshop#3692 ·
-
agent/guide documentation hive/hosted-available-lke648397-260827-5n31
難度 2/5 1-3 小時 新手友好度 90/100
-
kind/bug
難度 2/5 1-3 小時 新手友好度 68/100
falcosecurity/falco-website#1601 ·
-
documentation
難度 2/5 半天 新手友好度 62/100
inmanta/inmanta-core#10835 ·
-
難度 1/5 1 小時以內 新手友好度 88/100
k3s-io/k3s-ansible#566 ·