There's another problem that was found on AtariAge. In this one, global variables which are not initialized are not being declared as global. Additionally, for initialized data, the label is emitted before the section directive. It's a mess.
eric@compaq:~/dev/tios/src/temp$ cat emw4.c
int no_init[10];
int init_zero[10] = {0};
int init_val[] = {1,2,3,4};
eric@compaq:~/dev/tios/src/temp$ cat emw4.s
cseg
# No "def no_init", symbol will not be visible to other modules
no_init
bss 20
def init_zero
def init_zero
init_zero
bss 20
def init_val
dseg
even
# The "def init_val" line should be here
init_val
data 1
data 2
data 3
data 4
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment