Wlogical-op-1.c: Remove duplicated part.

2007-03-10  Dirk Mueller  <dmueller@suse.de>

       * gcc.dg/Wlogical-op-1.c: Remove duplicated part.
       * g++.dg/warn/Wlogical-op-1.C: Remove duplicated part.

From-SVN: r122799
This commit is contained in:
Dirk Mueller 2007-03-10 17:38:42 +00:00
parent 36be7cc9af
commit 4cdffe3d10
2 changed files with 10 additions and 102 deletions

View file

@ -1,7 +1,7 @@
// { dg-do compile}
// { dg-options "-Wlogical-op" }
enum { a, b };
enum { a, b1, b2 };
enum testenum { t1, t2};
@ -28,65 +28,20 @@ extern testenum testa();
void foo()
{
if ( f && b ) // { dg-warning "always evaluate as" }
if ( f && b2 ) // { dg-warning "always evaluate as" }
do_something(1);
if ( c && b ) // { dg-warning "always evaluate as" }
if ( c && b2 ) // { dg-warning "always evaluate as" }
do_something(2);
if ( b && c == a ) // { dg-bogus "always evaluate as" }
if ( b2 && c == a ) // { dg-bogus "always evaluate as" }
do_something(101);
if ( 1 && c )
do_something(102); // { dg-bogus "always evaluate as" }
if ( t2 && b ) // { dg-bogus "always evaluate as" }
if ( t2 && b2 ) // { dg-bogus "always evaluate as" }
do_something(103);
if ( true && c == a ) // { dg-bogus "always evaluate as" }
do_something(104);
if ( b && true ) // { dg-bogus "always evaluate as" }
if ( b2 && true ) // { dg-bogus "always evaluate as" }
do_something(105);
}
// { dg-do compile}
// { dg-options "-Winvariant-expr" }
enum { a, b };
enum testenum { t1, t2};
extern int c;
extern bool bool_a, bool_b;
template<typename Enum>
class QFlags
{
public:
typedef void **Zero;
int i;
inline QFlags(Enum f) : i(f) {}
inline operator int() const
{ return i;}
};
QFlags<testenum> f(t2);
extern void do_something(int);
extern testenum testa();
void foo()
{
if ( f && b ) // { dg-warning "always evaluate as" }
do_something(1);
if ( c && b ) // { dg-warning "always evaluate as" }
do_something(2);
if ( b && c == a ) // { dg-bogus "always evaluate as" }
do_something(101);
if ( 1 && c )
do_something(102); // { dg-bogus "always evaluate as" }
if ( t2 && b ) // { dg-bogus "always evaluate as" }
do_something(103);
if ( true && c == a ) // { dg-bogus "always evaluate as" }
do_something(104);
if ( b && true ) // { dg-bogus "always evaluate as" }
do_something(105);
}

View file

@ -33,62 +33,15 @@ void foo()
if ( b && c == a ) /* { dg-bogus "always evaluate as" } */
(void)testa();
if ( 1 && c ) /* { dg-warning "always evaluate as" } */
if ( 1 && c ) /* { dg-bogus "always evaluate as" } */
(void)testa();
if ( t2 && b ) /* { dg-warning "always evaluate as" } */
if ( t2 && b ) /* { dg-bogus "always evaluate as" } */
(void)testa();
if ( 0 && c == a ) /* { dg-warning "always evaluate as" } */
if ( 0 && c == a ) /* { dg-bogus "always evaluate as" } */
(void)testa();
if ( b && 1 ) /* { dg-warning "always evaluate as" } */
(void)testa();
}
/*
{ dg-do compile}
{ dg-options "-Winvariant-expr" }
*/
enum { a, ba, b };
enum testenum { t1, t2};
extern int c;
extern char bool_a, bool_b;
extern int testa();
void foo()
{
if ( testa() && b ) /* { dg-warning "always evaluate as" } */
(void)testa();
if ( c && b ) /* { dg-warning "always evaluate as" } */
(void)testa();
if ( c && 0x42 ) /* { dg-warning "always evaluate as" } */
(void)testa();
if ( c && 0x42 ) /* { dg-warning "always evaluate as" } */
(void) testa();
if ( c && 0x80 >>6) /* { dg-warning "always evaluate as" } */
(void)testa();
if ( b && c == a ) /* { dg-bogus "always evaluate as" } */
(void)testa();
if ( 1 && c ) /* { dg-warning "always evaluate as" } */
(void)testa();
if ( t2 && b ) /* { dg-warning "always evaluate as" } */
(void)testa();
if ( 0 && c == a ) /* { dg-warning "always evaluate as" } */
(void)testa();
if ( b && 1 ) /* { dg-warning "always evaluate as" } */
if ( b && 1 ) /* { dg-bogus "always evaluate as" } */
(void)testa();
}