python / python/cpython

Superfluous dialect symbol in inline assembly

Aperta
#157,250 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

interpreter-core type-bug
Lingua principale
Python
Stelle
77.2k
Fork
35.9k
Metriche di merge delle PR
Metriche PR in attesa

Descrizione

Bug report

Bug description:

This inline assembly block has an extra { at the start that is likely a typo:
https://github.com/python/cpython/blob/f715d25a8f0f0d57ecd2ae0dfe56c2ee01752733/Include/internal/pycore_pystate.h#L327

In GCC style inline assembly syntax, { initiates an dialect selector block [1] and this case forms an unfinished section of that.
It being silently accepted by current GCC/Clang is likely just them being permissive.

[1] https://gcc.gnu.org/onlinedocs/gcc/Extended-Asm.html#Multiple-assembler-dialects-in-asm-templates

CPython versions tested on:

CPython main branch

Operating systems tested on:

Linux

Linked PRs
  • gh-157251

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Ispeziona Include/internal/pycore_pystate.h alla riga 327 e confronta la sintassi dell’assembly inline con la documentazione di GCC sui dialetti multipli. Conferma la correzione prevista con GCC e Clang su Linux; il lavoro sarà completo quando l’assembly non conterrà più il selettore di dialetto incompleto e i controlli pertinenti di CPython avranno esito positivo.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
c
Ambito
compilers
Tipo di issue
Bug
Difficoltà
1/5
Tempo stimato
Meno di un'ora
Stato di attività
Ferma
Chiarezza
Specificata chiaramente
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.