summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
e7e3f2e)
26 files changed:
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
// This tests compilation of EMPTY_CLASS_EXPR's
struct empty {};
// This tests compilation of EMPTY_CLASS_EXPR's
struct empty {};
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
namespace foo {
namespace bar {
namespace foo {
namespace bar {
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
// XFAIL: darwin,sun
// Default placement versions of operator new.
inline void* operator new(unsigned, void* __p) throw();
// XFAIL: darwin,sun
// Default placement versions of operator new.
inline void* operator new(unsigned, void* __p) throw();
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
// There is a HOLE in the derived2 object due to not wanting to place the two
// baseclass instances at the same offset!
// There is a HOLE in the derived2 object due to not wanting to place the two
// baseclass instances at the same offset!
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
struct duration {
duration operator/=(int c) {
return *this;
struct duration {
duration operator/=(int c) {
return *this;
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
// Non-POD classes cannot be passed into a function by component, because their
// dtors must be run. Instead, pass them in by reference. The C++ front-end
// was mistakenly "thinking" that 'foo' took a structure by component.
// Non-POD classes cannot be passed into a function by component, because their
// dtors must be run. Instead, pass them in by reference. The C++ front-end
// was mistakenly "thinking" that 'foo' took a structure by component.
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
class Empty {};
void foo(Empty E);
class Empty {};
void foo(Empty E);
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
// Test with an opaque type
struct C;
// Test with an opaque type
struct C;
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
// The C++ front-end thinks the two foo's are different, the LLVM emitter
// thinks they are the same. The disconnect causes problems.
// The C++ front-end thinks the two foo's are different, the LLVM emitter
// thinks they are the same. The disconnect causes problems.
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
struct test {
bool A : 1;
bool B : 1;
struct test {
bool A : 1;
bool B : 1;
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
template<class T>
struct super {
template<class T>
struct super {
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
#include <string>
void bar();
#include <string>
void bar();
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
enum TchkType {
tchkNum, tchkString, tchkSCN, tchkNone
};
enum TchkType {
tchkNum, tchkString, tchkSCN, tchkNone
};
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
struct Gfx {
void opMoveSetShowText();
};
struct Gfx {
void opMoveSetShowText();
};
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
#include <vector>
std::vector<int> my_method ();
#include <vector>
std::vector<int> my_method ();
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
void doesntThrow() throw();
struct F {
void doesntThrow() throw();
struct F {
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
struct Evil {
void fun ();
};
struct Evil {
void fun ();
};
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
struct A {
virtual void Method() = 0;
};
struct A {
virtual void Method() = 0;
};
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
// Testcase from Bug 291
struct X {
// Testcase from Bug 291
struct X {
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+
+// RUN: %llvmgxx -S %s -o - | llvm-as -f -o /dev/null
+