aboutsummaryrefslogtreecommitdiff
path: root/test/FrontendC++/2004-11-27-InlineAsmFunctionRedefinition.cpp
blob: 42b223bc99cc1ec1a78af4dd74261301ebdd1b9a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// RUN: %llvmgxx %s -S -o /dev/null

// PR397

struct stat { };
struct stat64 { };

extern "C" {

extern int lstat(const char *, struct stat *) __asm__("lstat64");
extern int lstat64(const char *, struct stat64 *);

extern int __lxstat(int, const char *, struct stat *) __asm__("__lxstat64");
extern int __lxstat64(int, const char *, struct stat64 *);

extern __inline__ int lstat(const char *path, struct stat *statbuf) {
    return __lxstat(3, path, statbuf);
}
extern __inline__ int lstat64(const char *path, struct stat64 *statbuf) {
    return __lxstat64(3, path, statbuf);
}
}

int do_one_file(void) {
    return lstat(0, 0) + lstat64(0,0);
}