Skip to content

Commit ac5be20

Browse files
compilation is working, but codegened is bad
1 parent b4d9d88 commit ac5be20

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

PLUGINS/BACKEND/C/compile-c.lm

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,16 @@ plugins-backend-c-compile := λ . (: (
77
(if (==( k 'main_s )) (set assemble-argv-referenced True_u8) ())
88
(let kt (typeof rhs))
99
(let fragment (mk-fragment()))
10-
(if (.is-open kt) () (
10+
(if (.is-open kt) (
11+
(print 'Ignore\sGlobal\s_s)(print g-t)(print '\n_s)
12+
) (
1113
(if (.is-t( kt 'Blob_s )) (
1214
(set.term( fragment rhs ))
1315
(set.type( fragment kt ))
1416
(set global-ctx (.bind(
1517
global-ctx k kt fragment
1618
)))
17-
(set std-c-fragment-context (.bind( std-c-fragment-context g-t fragment )))
19+
(set std-c-fragment-context (.bind( std-c-fragment-context (def-to-sym g-t) fragment )))
1820
) (
1921
(let clean-tt (.without-tag kt))
2022
(let mid (mangle-identifier( k clean-tt )))
@@ -25,13 +27,13 @@ plugins-backend-c-compile := λ . (: (
2527
(set global-ctx (.bind(
2628
global-ctx k kt fragment
2729
)))
28-
(set std-c-fragment-context (.bind( std-c-fragment-context g-t fragment )))
30+
(set std-c-fragment-context (.bind( std-c-fragment-context (def-to-sym g-t) fragment )))
2931
) (
3032
(let repr-tt (&&( clean-tt (t1 'GlobalVariable_s) )))
3133
(set global-ctx (.bind(
3234
global-ctx k repr-tt fragment
3335
)))
34-
(set std-c-fragment-context (.bind( std-c-fragment-context g-t fragment )))
36+
(set std-c-fragment-context (.bind( std-c-fragment-context (def-to-sym g-t) fragment )))
3537
))
3638
))
3739
))

0 commit comments

Comments
 (0)