Skip to content

Superfluous dialect symbol in inline assembly #157250

Description

@fuhsnn

Bug report

Bug description:

This inline assembly block has an extra { at the start that is likely a typo:

__asm__("{movq %%rsp, %0" : "=r" (result));

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

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    interpreter-core(Objects, Python, Grammar, and Parser dirs)type-bugAn unexpected behavior, bug, or error

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions