diff options
Diffstat (limited to 'gcc/testsuite/g++.dg/lto')
39 files changed, 56 insertions, 24 deletions
diff --git a/gcc/testsuite/g++.dg/lto/20080709_0.C b/gcc/testsuite/g++.dg/lto/20080709_0.C index 55ae8c9ec2c..c9e81b44e2c 100644 --- a/gcc/testsuite/g++.dg/lto/20080709_0.C +++ b/gcc/testsuite/g++.dg/lto/20080709_0.C @@ -4,6 +4,7 @@ class Init { }; int f(Init *a) { + return 0; } int main(void){ diff --git a/gcc/testsuite/g++.dg/lto/20080907_0.C b/gcc/testsuite/g++.dg/lto/20080907_0.C index 9a4552310d9..a423196e7db 100644 --- a/gcc/testsuite/g++.dg/lto/20080907_0.C +++ b/gcc/testsuite/g++.dg/lto/20080907_0.C @@ -1,3 +1,5 @@ // { dg-lto-do assemble } +// { dg-lto-options "-Wno-return-type" } + struct Foo { void func (); }; Foo & bar () { } struct Baz { Baz (Baz &); }; Baz dummy() { bar().func(); } diff --git a/gcc/testsuite/g++.dg/lto/20080915_0.C b/gcc/testsuite/g++.dg/lto/20080915_0.C index 3789765a964..40c50422857 100644 --- a/gcc/testsuite/g++.dg/lto/20080915_0.C +++ b/gcc/testsuite/g++.dg/lto/20080915_0.C @@ -1,4 +1,6 @@ // { dg-lto-do assemble } +// { dg-lto-options "-Wno-return-type" } + struct Foo { static const int dummy; @@ -16,7 +18,7 @@ int func(const Bar& b) { } struct Baz { - Bar& operator*() {} + Bar& operator*() { static Bar a; return a; } }; void func1(Baz baz, int i, Bar bar) { diff --git a/gcc/testsuite/g++.dg/lto/20080916_0.C b/gcc/testsuite/g++.dg/lto/20080916_0.C index 3c900cd43b5..77494ef689c 100644 --- a/gcc/testsuite/g++.dg/lto/20080916_0.C +++ b/gcc/testsuite/g++.dg/lto/20080916_0.C @@ -9,4 +9,6 @@ class ios_base { }; ios_base& g() { + static ios_base a; + return a; } diff --git a/gcc/testsuite/g++.dg/lto/20081022_0.C b/gcc/testsuite/g++.dg/lto/20081022_0.C index 219f92d6a96..92d463b1cde 100644 --- a/gcc/testsuite/g++.dg/lto/20081022_0.C +++ b/gcc/testsuite/g++.dg/lto/20081022_0.C @@ -6,6 +6,8 @@ f (foo * a) return a->bar (); } +int main() { + return 0; } diff --git a/gcc/testsuite/g++.dg/lto/20081023_0.C b/gcc/testsuite/g++.dg/lto/20081023_0.C index ab3fc36f386..d40ac279b77 100644 --- a/gcc/testsuite/g++.dg/lto/20081023_0.C +++ b/gcc/testsuite/g++.dg/lto/20081023_0.C @@ -9,6 +9,8 @@ f (void) func (); } +int main() { + return 0; } diff --git a/gcc/testsuite/g++.dg/lto/20081118_0.C b/gcc/testsuite/g++.dg/lto/20081118_0.C index 7be32b6e2a7..c1f9dfc97a4 100644 --- a/gcc/testsuite/g++.dg/lto/20081118_0.C +++ b/gcc/testsuite/g++.dg/lto/20081118_0.C @@ -18,4 +18,5 @@ class foo : public object int foo::method(void) { + return 0; } diff --git a/gcc/testsuite/g++.dg/lto/20081118_1.C b/gcc/testsuite/g++.dg/lto/20081118_1.C index a1bf08186df..ee870a2eb75 100644 --- a/gcc/testsuite/g++.dg/lto/20081118_1.C +++ b/gcc/testsuite/g++.dg/lto/20081118_1.C @@ -18,4 +18,5 @@ bar* bar::method (void) { quxx::method(); + return 0; } diff --git a/gcc/testsuite/g++.dg/lto/20081120-1_0.C b/gcc/testsuite/g++.dg/lto/20081120-1_0.C index 6827337787c..03a9740c091 100644 --- a/gcc/testsuite/g++.dg/lto/20081120-1_0.C +++ b/gcc/testsuite/g++.dg/lto/20081120-1_0.C @@ -4,6 +4,7 @@ extern "C" { extern __inline __attribute__((__gnu_inline__)) int pthread_equal(int, int) { + return 0; } } static __typeof(pthread_equal) diff --git a/gcc/testsuite/g++.dg/lto/20081120-1_1.C b/gcc/testsuite/g++.dg/lto/20081120-1_1.C index e7e24a58b76..9c5d9bd6f4c 100644 --- a/gcc/testsuite/g++.dg/lto/20081120-1_1.C +++ b/gcc/testsuite/g++.dg/lto/20081120-1_1.C @@ -2,6 +2,7 @@ extern "C" { extern __inline __attribute__((__gnu_inline__)) int pthread_equal(int, int) { + return 0; } } static __typeof(pthread_equal) diff --git a/gcc/testsuite/g++.dg/lto/20081127_1.C b/gcc/testsuite/g++.dg/lto/20081127_1.C index 6488ac8d797..63ae50c31ec 100644 --- a/gcc/testsuite/g++.dg/lto/20081127_1.C +++ b/gcc/testsuite/g++.dg/lto/20081127_1.C @@ -1,3 +1,3 @@ struct Foo { Foo(); }; Foo::Foo() { } -main() { return 0; } +int main() { return 0; } diff --git a/gcc/testsuite/g++.dg/lto/20081217-2_0.C b/gcc/testsuite/g++.dg/lto/20081217-2_0.C index a47b0b5781b..3bc6ba997a5 100644 --- a/gcc/testsuite/g++.dg/lto/20081217-2_0.C +++ b/gcc/testsuite/g++.dg/lto/20081217-2_0.C @@ -1,5 +1,5 @@ struct A { - virtual int foo() {} + virtual int foo() { return 0; } }; struct B { virtual int f() {return 1; } @@ -13,6 +13,7 @@ C::C() { } +int main() { C c; diff --git a/gcc/testsuite/g++.dg/lto/20090303_0.C b/gcc/testsuite/g++.dg/lto/20090303_0.C index 88bd6ad9beb..d9ec5a35fed 100644 --- a/gcc/testsuite/g++.dg/lto/20090303_0.C +++ b/gcc/testsuite/g++.dg/lto/20090303_0.C @@ -16,6 +16,8 @@ void Test() { int int_set_; foobar (&int_set_, &test_ints[j]); } + +int main() { Test(); diff --git a/gcc/testsuite/g++.dg/lto/20090311-1_0.C b/gcc/testsuite/g++.dg/lto/20090311-1_0.C index 6d403272428..60c002fbfba 100644 --- a/gcc/testsuite/g++.dg/lto/20090311-1_0.C +++ b/gcc/testsuite/g++.dg/lto/20090311-1_0.C @@ -26,6 +26,8 @@ struct A { A a; extern int foo(); + +int main() { a.x = 4 + c.x; diff --git a/gcc/testsuite/g++.dg/lto/20090312_0.C b/gcc/testsuite/g++.dg/lto/20090312_0.C index b2222c2aa20..579b60e939e 100644 --- a/gcc/testsuite/g++.dg/lto/20090312_0.C +++ b/gcc/testsuite/g++.dg/lto/20090312_0.C @@ -5,6 +5,7 @@ extern "C" { extern JSErrorCallback p; }; +int main() { if ( x == ONE && p == 0) diff --git a/gcc/testsuite/g++.dg/lto/20090315_0.C b/gcc/testsuite/g++.dg/lto/20090315_0.C index 930fb16e5cf..1cae572eeb8 100644 --- a/gcc/testsuite/g++.dg/lto/20090315_0.C +++ b/gcc/testsuite/g++.dg/lto/20090315_0.C @@ -6,4 +6,4 @@ struct Foo { static Foo *foo_; }; Foo *Foo::foo_; -main() { return 0; } +int main() { return 0; } diff --git a/gcc/testsuite/g++.dg/lto/20091002-1_0.C b/gcc/testsuite/g++.dg/lto/20091002-1_0.C index c63b079d77b..a59a0cb9505 100644 --- a/gcc/testsuite/g++.dg/lto/20091002-1_0.C +++ b/gcc/testsuite/g++.dg/lto/20091002-1_0.C @@ -1,6 +1,6 @@ // { dg-lto-do link } // { dg-require-effective-target fpic } -// { dg-lto-options {{-fPIC -flto}} } +// { dg-lto-options {{-fPIC -flto -Wno-return-type}} } // { dg-extra-ld-options "-fPIC -r -nostdlib" } namespace std __attribute__ ((__visibility__ ("default"))) diff --git a/gcc/testsuite/g++.dg/lto/20091002-2_0.C b/gcc/testsuite/g++.dg/lto/20091002-2_0.C index bf936bf53a3..12a1596b3e2 100644 --- a/gcc/testsuite/g++.dg/lto/20091002-2_0.C +++ b/gcc/testsuite/g++.dg/lto/20091002-2_0.C @@ -4,7 +4,7 @@ // { dg-extra-ld-options "-fPIC -r -nostdlib" } class DataArray { - int max() const { } + int max() const { return 0; } }; template < class HashItem > class DataHashTable { diff --git a/gcc/testsuite/g++.dg/lto/20091002-3_0.C b/gcc/testsuite/g++.dg/lto/20091002-3_0.C index 4bff78b4937..0d9afc44c28 100644 --- a/gcc/testsuite/g++.dg/lto/20091002-3_0.C +++ b/gcc/testsuite/g++.dg/lto/20091002-3_0.C @@ -5,7 +5,7 @@ template < class T > class DataArray { - int max() const { } + int max() const { return 0; } }; class Name { }; class DataHashTable { diff --git a/gcc/testsuite/g++.dg/lto/20091004-1_0.C b/gcc/testsuite/g++.dg/lto/20091004-1_0.C index 649e35cb80d..536ae46dadf 100644 --- a/gcc/testsuite/g++.dg/lto/20091004-1_0.C +++ b/gcc/testsuite/g++.dg/lto/20091004-1_0.C @@ -1,6 +1,6 @@ // { dg-lto-do link } // { dg-require-effective-target fpic } -// { dg-lto-options {{-fPIC -O -flto}} } +// { dg-lto-options {{-fPIC -O -flto -Wno-return-type}} } typedef double Real; class Vector { diff --git a/gcc/testsuite/g++.dg/lto/20091004-2_0.C b/gcc/testsuite/g++.dg/lto/20091004-2_0.C index cc1204e6f7e..40ef136514b 100644 --- a/gcc/testsuite/g++.dg/lto/20091004-2_0.C +++ b/gcc/testsuite/g++.dg/lto/20091004-2_0.C @@ -1,6 +1,6 @@ // { dg-lto-do link } // { dg-require-effective-target fpic } -// { dg-lto-options {{-fPIC -O -flto}} } +// { dg-lto-options {{-fPIC -O -flto -Wno-return-type}} } typedef double Real; class Vector { diff --git a/gcc/testsuite/g++.dg/lto/20091004-3_1.C b/gcc/testsuite/g++.dg/lto/20091004-3_1.C index 641c7495b4f..f46b8fc6c11 100644 --- a/gcc/testsuite/g++.dg/lto/20091004-3_1.C +++ b/gcc/testsuite/g++.dg/lto/20091004-3_1.C @@ -12,5 +12,6 @@ All_Torus_Intersections(void) VECTOR D; VLength(len, D); VLength(len, D); + return 0; } diff --git a/gcc/testsuite/g++.dg/lto/20100721-1_0.C b/gcc/testsuite/g++.dg/lto/20100721-1_0.C index 09132e5992b..e39184b76d1 100644 --- a/gcc/testsuite/g++.dg/lto/20100721-1_0.C +++ b/gcc/testsuite/g++.dg/lto/20100721-1_0.C @@ -1,6 +1,6 @@ /* { dg-lto-do assemble } */ -static inline int __gthread_active_p (void) { } +static inline int __gthread_active_p (void) { return 0; } template <int rank, int dim> class Tensor; template <int dimension> struct G; template <int dim> class T { diff --git a/gcc/testsuite/g++.dg/lto/20101010-1_0.C b/gcc/testsuite/g++.dg/lto/20101010-1_0.C index 6eb40efc868..8f694c78aa7 100644 --- a/gcc/testsuite/g++.dg/lto/20101010-1_0.C +++ b/gcc/testsuite/g++.dg/lto/20101010-1_0.C @@ -1,4 +1,5 @@ // { dg-lto-do link } +// { dg-lto-options "-Wno-return-type" } typedef long size_t; template < class, class > struct pair diff --git a/gcc/testsuite/g++.dg/lto/20101010-2_0.C b/gcc/testsuite/g++.dg/lto/20101010-2_0.C index c68bcd63238..a26956f7fc7 100644 --- a/gcc/testsuite/g++.dg/lto/20101010-2_0.C +++ b/gcc/testsuite/g++.dg/lto/20101010-2_0.C @@ -1,4 +1,5 @@ // { dg-lto-do link } +// { dg-lto-options "-Wno-return-type" } typedef int size_t; template < size_t _Nw > struct _Base_bitset diff --git a/gcc/testsuite/g++.dg/lto/pr45679-1_0.C b/gcc/testsuite/g++.dg/lto/pr45679-1_0.C index 349f5c2c1ef..0dc5fd0dcb5 100644 --- a/gcc/testsuite/g++.dg/lto/pr45679-1_0.C +++ b/gcc/testsuite/g++.dg/lto/pr45679-1_0.C @@ -1,5 +1,5 @@ // { dg-lto-do link } -// { dg-lto-options {{-O3 -Wno-multichar}} } +// { dg-lto-options {{-O3 -Wno-multichar -Wno-return-type }} } // { dg-extra-ld-options "-flto -flto-partition=1to1 -r -nostdlib" } extern "C" { diff --git a/gcc/testsuite/g++.dg/lto/pr45679-1_1.C b/gcc/testsuite/g++.dg/lto/pr45679-1_1.C index c5e2db061fb..9aa92fa540e 100644 --- a/gcc/testsuite/g++.dg/lto/pr45679-1_1.C +++ b/gcc/testsuite/g++.dg/lto/pr45679-1_1.C @@ -1,4 +1,4 @@ - extern "C" { + extern "C" { typedef struct _IO_FILE FILE; extern struct _IO_FILE *stderr; extern int fprintf (FILE *__restrict __stream, __const char *__restrict __format, ...); diff --git a/gcc/testsuite/g++.dg/lto/pr45679-2_0.C b/gcc/testsuite/g++.dg/lto/pr45679-2_0.C index 549741902ba..b88ad92f539 100644 --- a/gcc/testsuite/g++.dg/lto/pr45679-2_0.C +++ b/gcc/testsuite/g++.dg/lto/pr45679-2_0.C @@ -1,6 +1,7 @@ // { dg-lto-do link } -// { dg-lto-options {{-O3 -Wno-multichar}} } +// { dg-lto-options {{-O3 -Wno-multichar -Wno-return-type}} } // { dg-extra-ld-options "-flto -flto-partition=1to1 -r -nostdlib" } + extern "C" { typedef struct { union { diff --git a/gcc/testsuite/g++.dg/lto/pr48042_0.C b/gcc/testsuite/g++.dg/lto/pr48042_0.C index 00b3428e9f1..4ca1a0cebfe 100644 --- a/gcc/testsuite/g++.dg/lto/pr48042_0.C +++ b/gcc/testsuite/g++.dg/lto/pr48042_0.C @@ -10,5 +10,5 @@ class B:public A { }; int B::x() { + return 0; } - diff --git a/gcc/testsuite/g++.dg/lto/pr51650-1_0.C b/gcc/testsuite/g++.dg/lto/pr51650-1_0.C index 4c9ef3c8c48..1c37e629e1d 100644 --- a/gcc/testsuite/g++.dg/lto/pr51650-1_0.C +++ b/gcc/testsuite/g++.dg/lto/pr51650-1_0.C @@ -15,5 +15,6 @@ int fn () { C::m (); + return 0; } -int main() {} +int main() { return 0; } diff --git a/gcc/testsuite/g++.dg/lto/pr51650-3_0.C b/gcc/testsuite/g++.dg/lto/pr51650-3_0.C index e84d555a0fb..ff55e4aab4c 100644 --- a/gcc/testsuite/g++.dg/lto/pr51650-3_0.C +++ b/gcc/testsuite/g++.dg/lto/pr51650-3_0.C @@ -16,5 +16,6 @@ int fn () { C::m (); + return 0; } -int main() {} +int main() { return 0; } diff --git a/gcc/testsuite/g++.dg/lto/pr63270_1.C b/gcc/testsuite/g++.dg/lto/pr63270_1.C index a842e5cfcc6..b5aab3508cf 100644 --- a/gcc/testsuite/g++.dg/lto/pr63270_1.C +++ b/gcc/testsuite/g++.dg/lto/pr63270_1.C @@ -48,6 +48,7 @@ namespace v8 }; int PreParser::ParseMemberWithNewPrefixesExpression ( bool * ) { + return 0; } } } diff --git a/gcc/testsuite/g++.dg/lto/pr65193_0.C b/gcc/testsuite/g++.dg/lto/pr65193_0.C index d778fcabb7f..ceebe51069d 100644 --- a/gcc/testsuite/g++.dg/lto/pr65193_0.C +++ b/gcc/testsuite/g++.dg/lto/pr65193_0.C @@ -1,6 +1,6 @@ /* { dg-lto-do link } */ /* { dg-require-effective-target fpic } */ -/* { dg-lto-options {{-fPIC -r -nostdlib -flto -O2 -g}} } */ +/* { dg-lto-options {{-fPIC -r -nostdlib -flto -O2 -g -Wno-return-type}} } */ void frexp (int, int *); namespace std diff --git a/gcc/testsuite/g++.dg/lto/pr65302_0.C b/gcc/testsuite/g++.dg/lto/pr65302_0.C index 2298afd9d96..83e1194fb10 100644 --- a/gcc/testsuite/g++.dg/lto/pr65302_0.C +++ b/gcc/testsuite/g++.dg/lto/pr65302_0.C @@ -1,5 +1,5 @@ // { dg-lto-do link } -// { dg-lto-options { { -flto -O2 } } } +// { dg-lto-options { { -flto -O2 -Wno-return-type } } } // { dg-extra-ld-options "-r -nostdlib -O0" } class CstringStorageReference { diff --git a/gcc/testsuite/g++.dg/lto/pr65316_0.C b/gcc/testsuite/g++.dg/lto/pr65316_0.C index cccd0db7d8e..2b9360e29fe 100644 --- a/gcc/testsuite/g++.dg/lto/pr65316_0.C +++ b/gcc/testsuite/g++.dg/lto/pr65316_0.C @@ -1,6 +1,7 @@ // { dg-lto-do link } -// { dg-lto-options { { -flto -std=c++11 -g2 -fno-lto-odr-type-merging -O2 } } } +// { dg-lto-options { { -flto -std=c++11 -g2 -fno-lto-odr-type-merging -O2 -Wno-return-type } } } // { dg-extra-ld-options "-r -nostdlib -O2 -fno-lto-odr-type-merging" } + namespace std { typedef long unsigned int size_t; diff --git a/gcc/testsuite/g++.dg/lto/pr65475c_0.C b/gcc/testsuite/g++.dg/lto/pr65475c_0.C index 8e1d8bcc83d..73686918c2c 100644 --- a/gcc/testsuite/g++.dg/lto/pr65475c_0.C +++ b/gcc/testsuite/g++.dg/lto/pr65475c_0.C @@ -1,6 +1,7 @@ /* { dg-lto-do link } */ -/* { dg-lto-options "-O2 -w" } */ /* { dg-extra-ld-options { -O2 -Wno-odr -r -nostdlib } } */ +/* { dg-lto-options { "-O2 -w -Wno-return-type" } } */ + namespace std { template < class > struct char_traits; diff --git a/gcc/testsuite/g++.dg/lto/pr65549_0.C b/gcc/testsuite/g++.dg/lto/pr65549_0.C index 889cc994a58..d3ed1dca158 100644 --- a/gcc/testsuite/g++.dg/lto/pr65549_0.C +++ b/gcc/testsuite/g++.dg/lto/pr65549_0.C @@ -1,5 +1,5 @@ // { dg-lto-do link } -// { dg-lto-options { { -std=gnu++14 -flto -g } { -std=gnu++14 -flto -g -O2 -fno-inline -flto-partition=max } } } +// { dg-lto-options { { -std=gnu++14 -flto -g -Wno-return-type } { -std=gnu++14 -flto -g -O2 -fno-inline -flto-partition=max -Wno-return-type } } } // { dg-extra-ld-options "-r -nostdlib" } namespace std { @@ -135,10 +135,12 @@ public: then(0, [] {}); } } clients; -main() { +int main() { B app; app.run(0, 0, [&] { auto config = app.configuration()[0].as<std::string>(); clients.then([] {}); }); + + return 0; } diff --git a/gcc/testsuite/g++.dg/lto/pr69077_0.C b/gcc/testsuite/g++.dg/lto/pr69077_0.C index 6a81d0e3a5c..10cb05917b9 100644 --- a/gcc/testsuite/g++.dg/lto/pr69077_0.C +++ b/gcc/testsuite/g++.dg/lto/pr69077_0.C @@ -11,4 +11,4 @@ struct cStdDev struct cWeightedStdDev : public cStdDev { virtual int netPack(); }; -int cWeightedStdDev::netPack() { } +int cWeightedStdDev::netPack() { return 0; } diff --git a/gcc/testsuite/g++.dg/lto/pr69589_0.C b/gcc/testsuite/g++.dg/lto/pr69589_0.C index 599d5d44960..c6f72c4090b 100644 --- a/gcc/testsuite/g++.dg/lto/pr69589_0.C +++ b/gcc/testsuite/g++.dg/lto/pr69589_0.C @@ -1,5 +1,5 @@ // { dg-lto-do link } -// { dg-lto-options "-O2 -rdynamic" } +// { dg-lto-options { "-O2 -rdynamic -Wno-return-type" } } // { dg-extra-ld-options "-r -nostdlib" } // { dg-require-effective-target rdynamic } |