dllimport variables for MSVC in stresstest.at

* tests/stresstest.at [MSVC]: dllimport all imported
variables.
This commit is contained in:
Peter Rosin 2010-07-18 17:17:06 +02:00
parent 653fa66d07
commit 937319cb0a
2 changed files with 31 additions and 14 deletions

View File

@ -1,3 +1,8 @@
2010-07-18 Peter Rosin <peda@lysator.liu.se>
* tests/stresstest.at [MSVC]: dllimport all imported
variables.
2010-07-17 Peter Rosin <peda@lysator.liu.se>
dllimport the variable for MSVC in link-order.at

View File

@ -93,29 +93,35 @@ AT_DATA(main.c,
#if defined(LIBA_DLL_IMPORT)
# if defined(_WIN32) || defined(WIN32) || defined(__CYGWIN__)
# define LIBA_SCOPE extern __declspec(dllimport)
# if defined(_MSC_VER)
# define LIBA_SCOPE_VAR LIBA_SCOPE
# endif
# endif
#endif
#if !defined(LIBA_SCOPE)
# define LIBA_SCOPE extern
#endif
#if !defined(LIBA_SCOPE_VAR)
# define LIBA_SCOPE_VAR extern
#endif
#ifdef __cplusplus
extern "C" {
#endif
extern int v1;
extern int v3, v4;
LIBA_SCOPE_VAR int v1;
LIBA_SCOPE_VAR int v3, v4;
LIBA_SCOPE const int v5, v6;
extern const char* v7;
extern const char v8[];
LIBA_SCOPE_VAR const char* v7;
LIBA_SCOPE_VAR const char v8[];
extern int v9(void);
extern int (*v10) (void);
extern int (*v11) (void);
LIBA_SCOPE_VAR int (*v10) (void);
LIBA_SCOPE_VAR int (*v11) (void);
LIBA_SCOPE int (*const v12) (void);
#ifdef __cplusplus
}
#endif
typedef struct { int arr[1000]; } large;
extern large v13, v14, v15;
LIBA_SCOPE_VAR large v13, v14, v15;
int main(void)
{
@ -131,26 +137,32 @@ AT_DATA(dlself.c,
#if defined(LIBA_DLL_IMPORT)
# if defined(_WIN32) || defined(WIN32) || defined(__CYGWIN__)
# define LIBA_SCOPE extern __declspec(dllimport)
# if defined(_MSC_VER)
# define LIBA_SCOPE_VAR LIBA_SCOPE
# endif
# endif
#endif
#if !defined(LIBA_SCOPE)
# define LIBA_SCOPE extern
#endif
#if !defined(LIBA_SCOPE_VAR)
# define LIBA_SCOPE_VAR extern
#endif
#ifdef __cplusplus
extern "C" {
#endif
extern int v1;
extern int v3, v4;
LIBA_SCOPE_VAR int v1;
LIBA_SCOPE_VAR int v3, v4;
LIBA_SCOPE const int v5, v6;
extern const char* v7;
extern const char v8[];
LIBA_SCOPE_VAR const char* v7;
LIBA_SCOPE_VAR const char v8[];
extern int v9(void);
extern int (*v10) (void);
extern int (*v11) (void);
LIBA_SCOPE_VAR int (*v10) (void);
LIBA_SCOPE_VAR int (*v11) (void);
LIBA_SCOPE int (*const v12) (void);
typedef struct { int arr[1000]; } large;
extern large v13, v14, v15;
LIBA_SCOPE_VAR large v13, v14, v15;
extern int w1;
extern int w3, w4;