blob: 013f3c8f64187a1b86a1f2e9d61dadd593a1c10e (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
/*
bug 1839321
*/
#include <testfwk.h>
__xdata char Global = 2;
__code struct Value {
char __xdata * Name[2];
} Value_1 = {{&Global, 0}},
Value_2 = {{&Global, 0}};
char i = 1;
// note: this function expects its first parameter to be passed in
// 2 bytes on **stack** (not registers)
char
bar(char __xdata* __code* ptr, ...)
{
return **ptr;
}
void
foo (void)
{
}
void
testBug(void)
{
ASSERT (bar (i ? Value_1.Name : Value_2.Name) == 2);
}
|