Dynamic Analysis with Clang building python make unittest failed
Aperta
Nessuno ha ancora preso questa issue.
needs: decision
topic-building python
topic-test
type-feature
- Lingua principale
- Python
- Stelle
- 2.1k
- Fork
- 1k
- Merge medio
- 2g 12h
- PR unite (30g)
- 12
Descrizione
use this way to enable sanitizers make unittest check Sanitizer failed; it use _cflags to check
_cflags = sysconfig.get_config_var('CFLAGS') or ''
_config_args = sysconfig.get_config_var('CONFIG_ARGS') or ''
MEMORY_SANITIZER = (
'-fsanitize=memory' in _cflags or
'--with-memory-sanitizer' in _config_args
)
ADDRESS_SANITIZER = (
'-fsanitize=address' in _cflags
)
should replace with configure option
--with-address-sanitizer
enable AddressSanitizer memory error detector,
'asan' (default is no)
--with-memory-sanitizer enable MemorySanitizer allocation error detector,
'msan' (default is no)
--with-undefined-behavior-sanitizer
enable UndefinedBehaviorSanitizer undefined
behaviour detector, 'ubsan' (default is no)
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia individuando il controllo unittest di Python che legge sysconfig CFLAGS e CONFIG_ARGS. Confrontalo con le opzioni configure elencate per AddressSanitizer, MemorySanitizer e UndefinedBehaviorSanitizer, quindi esegui make unittest check per confermare che il rilevamento dei sanitizer funzioni con queste opzioni.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- python
- Ambito
- build-system, testing
- Tipo di issue
- Bug
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 38/100