annotate t.h @ 0:e0a26cc60a20 default tip

Test for solaris cc bug with bit-fields. With "cc -fast" (or, rather, "cc -xalias_level=basic -xO3", implied by "cc -fast") solaris cc compiles incorrect code for bit-field accesses, notably not rechecking data after functions calls in some situations. Using "-xalias_level=any" resolves the problem (as well as using any non-bit-field type). Tested cc version is "Sun C 5.9 SunOS_i386 2007/05/03" (Sun Studio 12).
author Maxim Dounin <mdounin@mdounin.ru>
date Tue, 16 Aug 2011 22:09:57 +0400
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
e0a26cc60a20 Test for solaris cc bug with bit-fields.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1
e0a26cc60a20 Test for solaris cc bug with bit-fields.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
2 typedef struct {
e0a26cc60a20 Test for solaris cc bug with bit-fields.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
3 unsigned bit:1;
e0a26cc60a20 Test for solaris cc bug with bit-fields.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
4 } test;
e0a26cc60a20 Test for solaris cc bug with bit-fields.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
5
e0a26cc60a20 Test for solaris cc bug with bit-fields.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
6 void doinstall();
e0a26cc60a20 Test for solaris cc bug with bit-fields.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
7 int dotest(test *t);