conformtest: Support specifying types before promotion.

This commit is contained in:
Joseph Myers 2012-05-01 20:03:15 +00:00
parent aafc49b3fc
commit ee74b9cbbd
2 changed files with 10 additions and 1 deletions

View File

@ -1,5 +1,9 @@
2012-05-01 Joseph Myers <joseph@codesourcery.com>
* conform/conformtest.pl: If macro or constant types start
"promoted:", expect the symbol to be of the following type
promoted by the integer promotions.
* conform/conformtest.pl: Parse all "constant" and "macro" lines
in one place. Also handle "macro-constant".

View File

@ -437,7 +437,12 @@ while ($#headers >= 0) {
open (TESTFILE, ">$fnamebase.c");
print TESTFILE "$prepend";
print TESTFILE "#include <$h>\n";
print TESTFILE "__typeof__ (($type) 0) a;\n";
if ($type =~ /^promoted:/) {
$type =~ s/^promoted://;
print TESTFILE "__typeof__ (($type) 0 + ($type) 0) a;\n";
} else {
print TESTFILE "__typeof__ (($type) 0) a;\n";
}
print TESTFILE "extern __typeof__ ($symbol) a;\n";
close (TESTFILE);