From 5ba6a1a2afb51eea6352876439f226e7d6281187 Mon Sep 17 00:00:00 2001
From: Richard Smith <richard-llvm@metafoo.co.uk>
Date: Tue, 2 Sep 2014 21:39:21 +0000
Subject: [PATCH] Avoid test failure on platforms where size_t is long long
 (and thus can't be directly written in strictly-conforming source code).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@216969 91177308-0d34-0410-b5e6-96231b3b80d8
---
 test/CXX/drs/dr5xx.cpp | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/test/CXX/drs/dr5xx.cpp b/test/CXX/drs/dr5xx.cpp
index ac6c9df808b..d7c8fa42830 100644
--- a/test/CXX/drs/dr5xx.cpp
+++ b/test/CXX/drs/dr5xx.cpp
@@ -5,7 +5,8 @@
 // FIXME: This is included to avoid a diagnostic with no source location
 // pointing at the implicit operator new. We can't match such a diagnostic
 // with -verify.
-void *operator new(__SIZE_TYPE__); // expected-warning 0-1{{missing exception spec}} expected-note{{candidate}}
+__extension__ typedef __SIZE_TYPE__ size_t;
+void *operator new(size_t); // expected-warning 0-1{{missing exception spec}} expected-note{{candidate}}
 
 namespace dr500 { // dr500: dup 372
   class D;
@@ -564,7 +565,7 @@ namespace dr552 { // dr552: yes
 }
 
 struct dr553_class {
-  friend void *operator new(__SIZE_TYPE__, dr553_class);
+  friend void *operator new(size_t, dr553_class);
 };
 namespace dr553 {
   dr553_class c;
@@ -574,7 +575,7 @@ namespace dr553 {
   void *p = new (c) int; // expected-error {{no matching function}}
 
   struct namespace_scope {
-    friend void *operator new(__SIZE_TYPE__, namespace_scope); // expected-error {{cannot be declared inside a namespace}}
+    friend void *operator new(size_t, namespace_scope); // expected-error {{cannot be declared inside a namespace}}
   };
 }
 
-- 
GitLab