problem with in-place floordiv expression
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 35/100
- Issue-Typ
- Bug
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- javascript, python
- Bereich
- compilers
Rechercherichtung
Start by compiling the provided Python reproduction containing x //= y inside __pragma__('opov'), then inspect the generated JavaScript around __call__ (Never here, null, x, y). Confirm the compiler emits valid JavaScript and preserves in-place floor-division behavior under opov, while existing arithmetic operators remain unaffected.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Expression with in-place floordiv operator within __pragma__('opov') causes error.
Error occurs with x //= y within __pragma__('opov').
Browser error: Uncaught SyntaxError: missing ) after argument list.
Causes whole script to fail execution when code is present even if not called.
Compiler error occurs with ifloordiv (x //= y), no error with floordiv (x = x//y).
Appears to be a compilation error though compiles with no error notice.
No error with other in-place arithmetic ops (+=, /=, %= ...).
python code:
def idiv():
x = 5
y = 2
x //= y
print(x)
def idiv_opov():
x = 5
y = 2
# __pragma__('opov')
x //= y
# __pragma__('noopov')
print(x)
idiv()
compiled javascript code:
export var idiv = function () {
var x = 5;
var y = 2;
var x = Math.floor (x / y);
print (x);
};
export var idiv_opov = function () {
var x = 5;
var y = 2;
var x = __call__ (Never here, null, x, y);
print (x);
};
idiv ();
env: Python3.9 venv with pip install Transcrypt
testing: Firefox version 133 in Linux
- Vorherrschende Sprache
- Python
- Sterne
- 2.9k
- Forks
- 218
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus TranscryptOrg/Transcrypt
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
TranscryptOrg/Transcrypt#913 ·
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 88/100
TranscryptOrg/Transcrypt#911 · 2 Kommentare ·
-
IS: bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
TranscryptOrg/Transcrypt#908 ·
-
Update installation and testing instructionsEvtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. OffenSUB: documentation
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 62/100
TranscryptOrg/Transcrypt#656 · 7 Kommentare ·
-
re: character classes are parsed as regular expressionsEvtl. vergeben @CarstenGrohmann hat das vor 40 Tagen übernommen. Offen
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 76/100
TranscryptOrg/Transcrypt#914 ·
Alle Issues in TranscryptOrg/Transcrypt
Ähnliche Issues
-
enhancement good first issue Stellar Wave trivial
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
StellarCanary/ProtocolCanary-Fixtures#258 ·
Maintainer antworten meist innerhalb von 1 Tag
-
github_actions
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
Hochfrequenz/aibap.mcp#578 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
mishraprafful/multihull#150 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
Maintainer antworten meist innerhalb von 2 Tagen
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 66/100
python-caldav/caldav#735 ·
Maintainer antworten meist innerhalb von 1 Tag