Opened 5 years ago

Closed 5 years ago

Last modified 5 years ago

#314 closed defect (fixed)

Munge symbol names that aren't exported.

Reported by: benl Owned by:
Priority: normal Milestone:
Component: Core to Sea Translation Version: 0.3.2
Keywords: Cc:

Description

If a name isn't foreign exported then prefix _DDC_ to avoid clashes.

$ objdump -t demo/Tetra/Ack/Main.o
0000000000000000 l    df *ABS*	0000000000000000 demo/Tetra/Ack/Main.ddc.ll
0000000000000000 l    d  .text	0000000000000000 .text
0000000000000000 l    d  .data	0000000000000000 .data
0000000000000000 l    d  .bss	0000000000000000 .bss
0000000000000000 l     F .text	00000000000001bd ack
00000000000001c0 l     F .text	000000000000006b _ddc_main
0000000000000000 l    d  .note.GNU-stack	0000000000000000 .note.GNU-stack
0000000000000000 l    d  .eh_frame	0000000000000000 .eh_frame
0000000000000000         *UND*	0000000000000000 _GLOBAL_OFFSET_TABLE_
0000000000000000         *UND*	0000000000000000 payloadOfRawSmall
0000000000000000         *UND*	0000000000000000 allocRawSmall
0000000000000000         *UND*	0000000000000000 showNat
0000000000000000         *UND*	0000000000000000 putStrLn
0000000000000230 g     F .text	000000000000003a main
0000000000000000         *UND*	0000000000000000 malloc
0000000000000000 g     O .bss	0000000000000008 _DDC_Runtime_heapTop
0000000000000008 g     O .bss	0000000000000008 _DDC_Runtime_heapMax
0000000000000000         *UND*	0000000000000000 allocBoxed

Only the 'main' function as generated by DDC should be at top-level of the symbol name space.

Change History (3)

comment:1 Changed 5 years ago by benl

  • Component changed from Unknown to Core to Sea Translation

comment:2 Changed 5 years ago by benl

  • Resolution set to fixed
  • Status changed from new to closed

comment:3 Changed 5 years ago by benl

  • Milestone 0.4.0 deleted

Milestone 0.4.0 deleted

Note: See TracTickets for help on using tickets.