diff options
| author | Eli Friedman <eli.friedman@gmail.com> | 2009-07-05 18:47:56 +0000 |
|---|---|---|
| committer | Eli Friedman <eli.friedman@gmail.com> | 2009-07-05 18:47:56 +0000 |
| commit | e3aa454e2f81ed5170cffc3f50193634810442f2 (patch) | |
| tree | cb925eed7fc0ff7fbaebe8121f897d73d643012e /clang/lib | |
| parent | 5674531255c3babc083d8dbb694ae8fb6d948274 (diff) | |
| download | bcm5719-llvm-e3aa454e2f81ed5170cffc3f50193634810442f2.tar.gz bcm5719-llvm-e3aa454e2f81ed5170cffc3f50193634810442f2.zip | |
Per PR4506, fix the type of size_t on OpenBSD.
llvm-svn: 74795
Diffstat (limited to 'clang/lib')
| -rw-r--r-- | clang/lib/Basic/Targets.cpp | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/clang/lib/Basic/Targets.cpp b/clang/lib/Basic/Targets.cpp index 3f7d9a31c61..7a5adea1a38 100644 --- a/clang/lib/Basic/Targets.cpp +++ b/clang/lib/Basic/Targets.cpp @@ -889,6 +889,17 @@ public: } // end anonymous namespace namespace { +class OpenBSDI386TargetInfo : public OpenBSDTargetInfo<X86_32TargetInfo> { +public: + OpenBSDI386TargetInfo(const std::string& triple) : + OpenBSDTargetInfo<X86_32TargetInfo>(triple) { + SizeType = UnsignedLong; + IntPtrType = SignedLong; + } +}; +} // end anonymous namespace + +namespace { class DarwinI386TargetInfo : public DarwinTargetInfo<X86_32TargetInfo> { public: DarwinI386TargetInfo(const std::string& triple) : @@ -1403,7 +1414,7 @@ TargetInfo* TargetInfo::CreateTargetInfo(const std::string &T) { if (isDragonFly) return new DragonFlyBSDTargetInfo<X86_32TargetInfo>(T); if (isOpenBSD) - return new OpenBSDTargetInfo<X86_32TargetInfo>(T); + return new OpenBSDI386TargetInfo(T); if (isFreeBSD) return new FreeBSDTargetInfo<X86_32TargetInfo>(T); if (isSolaris) |

