Mercurial > urweb
comparison src/compiler.sml @ 317:6a4e365db60c
Fix memory bounds checks; specialization of multi-argument polymorphic function works
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Thu, 11 Sep 2008 10:34:47 -0400 |
parents | e21d0dddda09 |
children | e457d8972ff1 |
comparison
equal
deleted
inserted
replaced
316:04ebfe929a98 | 317:6a4e365db60c |
---|---|
479 | 479 |
480 val toSqlify = transform sqlify "sqlify" o toMono_opt2 | 480 val toSqlify = transform sqlify "sqlify" o toMono_opt2 |
481 | 481 |
482 fun compileC {cname, oname, ename} = | 482 fun compileC {cname, oname, ename} = |
483 let | 483 let |
484 val compile = "gcc -Wstrict-prototypes -Werror -s -O3 -I include -c " ^ cname ^ " -o " ^ oname | 484 val compile = "gcc -Wstrict-prototypes -Werror -O3 -I include -c " ^ cname ^ " -o " ^ oname |
485 val link = "gcc -Werror -s -O3 -pthread -lpq clib/urweb.o " ^ oname ^ " clib/driver.o -o " ^ ename | 485 val link = "gcc -Werror -O3 -pthread -lpq clib/urweb.o " ^ oname ^ " clib/driver.o -o " ^ ename |
486 in | 486 in |
487 if not (OS.Process.isSuccess (OS.Process.system compile)) then | 487 if not (OS.Process.isSuccess (OS.Process.system compile)) then |
488 print "C compilation failed\n" | 488 print "C compilation failed\n" |
489 else if not (OS.Process.isSuccess (OS.Process.system link)) then | 489 else if not (OS.Process.isSuccess (OS.Process.system link)) then |
490 print "C linking failed\n" | 490 print "C linking failed\n" |