bug-binutils
[Top][All Lists]
Advanced

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

[Bug binutils/25750] GNU as has inconsistent behavior when expanding .ma


From: nickc at redhat dot com
Subject: [Bug binutils/25750] GNU as has inconsistent behavior when expanding .macro that takes as input directives with arguments
Date: Fri, 03 Apr 2020 09:36:35 +0000

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

--- Comment #5 from Nick Clifton <nickc at redhat dot com> ---
Hi Jian,

> Sorry I just realized my question was misleading. What I really meant was if
> vararg would work on a macro taking as input multiple directives with
> arguments, such as the one below. vararg seemed to not work with such case
> in my experiment. 
> 
> .macro foo insn1, insn2
> \insn1
> \insn2
> .endm
> 
> foo .section .sec1
> foo .section .sec2

Well now that particular example would not work[1], but then it is not using
the :vararg suffix either.  You are correct however in assuming that you cannot
have two :vararg suffixes in a macro definition.  So for example this does not
work:

  .macro foo insn1:vararg insn2:vararg
  \insn1
  \insn2
  .endm

  foo .section .sec1 .section .sec2

In fact only the last macro argument can have the :vararg suffix, which is why
it can only be used once.

Cheers
  Nick

[1]  Just to be pedantic, your example would work if you put the two insns on
the same line.  So this:

  .macro foo insn1 insn2
  \insn1 \insn2
  .endm

      foo .section .sec1

Does work.

-- 
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]