diff options
Diffstat (limited to 'gcc/ada/gcc-interface/decl.c')
-rw-r--r-- | gcc/ada/gcc-interface/decl.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/gcc/ada/gcc-interface/decl.c b/gcc/ada/gcc-interface/decl.c index ad742aa..a10fc2d 100644 --- a/gcc/ada/gcc-interface/decl.c +++ b/gcc/ada/gcc-interface/decl.c @@ -6,7 +6,7 @@ * * * C Implementation File * * * - * Copyright (C) 1992-2010, Free Software Foundation, Inc. * + * Copyright (C) 1992-2011, Free Software Foundation, Inc. * * * * GNAT is free software; you can redistribute it and/or modify it under * * terms of the GNU General Public License as published by the Free Soft- * @@ -50,14 +50,19 @@ #include "ada-tree.h" #include "gigi.h" -/* Convention_Stdcall should be processed in a specific way on Windows targets - only. The macro below is a helper to avoid having to check for a Windows - specific attribute throughout this unit. */ +/* Convention_Stdcall should be processed in a specific way on 32 bits + Windows targets only. The macro below is a helper to avoid having to + check for a Windows specific attribute throughout this unit. */ #if TARGET_DLLIMPORT_DECL_ATTRIBUTES +#ifdef TARGET_64BIT +#define Has_Stdcall_Convention(E) \ + (!TARGET_64BIT && Convention (E) == Convention_Stdcall) +#else #define Has_Stdcall_Convention(E) (Convention (E) == Convention_Stdcall) +#endif #else -#define Has_Stdcall_Convention(E) (0) +#define Has_Stdcall_Convention(E) 0 #endif /* Stack realignment is necessary for functions with foreign conventions when |