bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug gas/22912] New: .irp variable not expanding if followed by a parame


From: andre.simoesdiasvieira at arm dot com
Subject: [Bug gas/22912] New: .irp variable not expanding if followed by a parameter defined earlier
Date: Fri, 02 Mar 2018 11:24:47 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=22912

            Bug ID: 22912
           Summary: .irp variable not expanding if followed by a parameter
                    defined earlier
           Product: binutils
           Version: unspecified
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: gas
          Assignee: unassigned at sourceware dot org
          Reporter: andre.simoesdiasvieira at arm dot com
  Target Milestone: ---

With the following input:
.macro mname op0, op1
.irp p0, _and_, _or_
\op0\p0\op1
.endr
.endm
.syntax unified
.text
mname banana, pear


I would expect the macro to expand to:
banana_and_pear
banana_or_pear

Unfortunately when passing it to arm-none-eabi-as I get:
Error: bad instruction `banana\p0pear'
Error: bad instruction `banana\p0pear'

I have also tried this with \() in between operands, but no luck. FYI, if I
change this to:

.macro mname op0
.irp op1, pear
.irp p0, _and_, _or_
\op0\p0\op1
.endr
.endr
.endm

It still will not work, however, if I move the op1 irp past the p0 irp:
.macro mname op0
.irp p0, _and_, _or_
.irp op1, pear
\op0\p0\op1
.endr
.endr
.endm

then I get the expected:
banana_and_pear
banana_or_pear

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]