* lib/target_suports.exp

(check_effective_target_has_w_floating_suffix): New procedure.
	(check_effective_target_has_q_floating_suffix): Ditto.
	* g++.dg/cpp0x/gnu_fext-numeric-literals.C: Add dg-error directive
	for unsupported non-standard suffix on floating constant.
	* g++.dg/cpp0x/std_fext-numeric-literals.C: Ditto.

From-SVN: r193551
This commit is contained in:
Uros Bizjak 2012-11-16 08:51:43 +01:00 committed by Uros Bizjak
parent 5756eff74e
commit 589f95d610
4 changed files with 34 additions and 8 deletions

View file

@ -1,3 +1,12 @@
2012-11-15 Uros Bizjak <ubizjak@gmail.com>
* lib/target_suports.exp
(check_effective_target_has_w_floating_suffix): New procedure.
(check_effective_target_has_q_floating_suffix): Ditto.
* g++.dg/cpp0x/gnu_fext-numeric-literals.C: Add dg-error directive
for unsupported non-standard suffix on floating constant.
* g++.dg/cpp0x/std_fext-numeric-literals.C: Ditto.
2012-11-14 Jakub Jelinek <jakub@redhat.com>
* lib/asan-dg.exp: New file.

View file

@ -91,10 +91,10 @@ main()
auto rfp = 1.0r; // { dg-error "fixed-point types not supported" }
auto Rfp = 1.0R; // { dg-error "fixed-point types not supported" }
auto wfp = 1.0w;
auto Wfp = 1.0W;
auto qfp = 1.0q;
auto Qfp = 1.0Q;
auto wfp = 1.0w; // { dg-error "unsupported" "" { target { ! has_w_floating_suffix } } }
auto Wfp = 1.0W; // { dg-error "unsupported" "" { target { ! has_w_floating_suffix } } }
auto qfp = 1.0q; // { dg-error "unsupported" "" { target { ! has_q_floating_suffix } } }
auto Qfp = 1.0Q; // { dg-error "unsupported" "" { target { ! has_q_floating_suffix } } }
}
// { dg-warning "literal operator suffixes not preceded by" "" { target *-*-* } 7 }

View file

@ -91,10 +91,10 @@ main()
auto rfp = 1.0r; // { dg-error "fixed-point types not supported" }
auto Rfp = 1.0R; // { dg-error "fixed-point types not supported" }
auto wfp = 1.0w;
auto Wfp = 1.0W;
auto qfp = 1.0q;
auto Qfp = 1.0Q;
auto wfp = 1.0w; // { dg-error "unsupported" "" { target { ! has_w_floating_suffix } } }
auto Wfp = 1.0W; // { dg-error "unsupported" "" { target { ! has_w_floating_suffix } } }
auto qfp = 1.0q; // { dg-error "unsupported" "" { target { ! has_q_floating_suffix } } }
auto Qfp = 1.0Q; // { dg-error "unsupported" "" { target { ! has_q_floating_suffix } } }
}
// { dg-warning "literal operator suffixes not preceded by" "" { target *-*-* } 7 }

View file

@ -1742,6 +1742,23 @@ proc check_effective_target_double64plus { } {
}]
}
# Return 1 if the target supports 'w' suffix on floating constant
# 0 otherwise.
proc check_effective_target_has_w_floating_suffix { } {
return [check_no_compiler_messages w_fp_suffix object {
float dummy = 1.0w;
} "-std=gnu++03 -w"]
}
# Return 1 if the target supports 'q' suffix on floating constant
# 0 otherwise.
proc check_effective_target_has_q_floating_suffix { } {
return [check_no_compiler_messages q_fp_suffix object {
float dummy = 1.0q;
} "-std=gnu++03 -w"]
}
# Return 1 if the target supports compiling fixed-point,
# 0 otherwise.