summaryrefslogtreecommitdiff
path: root/support/regression/tests/bug-2419.c
blob: 177c459ad9ad3b5e36666ca12f5f1cc67dea732b (plain)
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
/*
   bug-2419.c
*/

#include <testfwk.h>

#if defined (__SDCC_mcs51) || defined (__SDCC_hc08) || defined (__SDCC_s08) || defined (__SDCC_ds390) || defined (__SDCC_ds400)
#define XDATA __xdata
#else
#define XDATA
#endif

char XDATA c0[] = "123";
char XDATA c1[] = "abc";
char XDATA *gp = c0;

void XDATA *aligned_a (void)
{
  return gp;
}

extern void XDATA *aligned_a (void);

void testBug (void)
{
  ASSERT (aligned_a () == c0);
  gp = c1;
  ASSERT (aligned_a () == c1);
}