This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug driver/41024] driver passes wrong parameter to as
- From: "ktietz at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 5 Sep 2009 10:02:03 -0000
- Subject: [Bug driver/41024] driver passes wrong parameter to as
- References: <bug-41024-11564@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #2 from ktietz at gcc dot gnu dot org 2009-09-05 10:02 -------
(In reply to comment #1)
> It's because of this in gcc/config/i386/mingw-w64.h:
>
> #define ASM_SPEC "%{v:-V} %{n} %{T} %{Ym,*} %{Yd,*} \
> %{Wa,*:%*} %{m32:--32} %{m64:--64}"
>
>
> The "%{v:-V}" part is what's triggering what you see. Now, the question is why
> is your as rejecting the -V option? My linux as accepts it, my darwin as also,
> but i586-pc-mingw32-as doesn't...
>
> After further investigation, it seems that handling the option -V on i386
> processors is only done for ELF targets; can't even begin to think of a good
> reason for that, but that's what gas source code says. So, I recommend the
> following (untested) patch to GCC:
>
> Index: gcc/config/i386/mingw-w64.h
> ===================================================================
> --- gcc/config/i386/mingw-w64.h (revision 151373)
> +++ gcc/config/i386/mingw-w64.h (working copy)
> @@ -36,7 +36,7 @@
> /* Enable multilib. */
>
> #undef ASM_SPEC
> -#define ASM_SPEC "%{v:-V} %{n} %{T} %{Ym,*} %{Yd,*} \
> +#define ASM_SPEC "%{v} %{n} %{T} %{Ym,*} %{Yd,*} \
> %{Wa,*:%*} %{m32:--32} %{m64:--64}"
>
> #if TARGET_64BIT_DEFAULT
>
Ok, could you sent a patch for it. It is pre-approved by me.
Thanks,
Kai
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41024