# HG changeset patch # User Adam Chlipala # Date 1247429394 14400 # Node ID 025806b3c01430e5838f3d43bc0ca9694f8887e6 # Parent c50101ddf7fa0c0b07ef02480dc837f14b58acaa Demo compiles again with Postgres and MySQL; MySQL version lacks sequence code and so doesn't work yet diff -r c50101ddf7fa -r 025806b3c014 src/mysql.sml --- a/src/mysql.sml Sun Jul 12 15:42:24 2009 -0400 +++ b/src/mysql.sml Sun Jul 12 16:09:54 2009 -0400 @@ -643,14 +643,14 @@ newline, string "})"] | Time => box [string "({", - string "MYSQL_TIME *mt = buffer", + string "MYSQL_TIME *mt = &buffer", string (Int.toString i), string ";", newline, newline, string "struct tm t = {mt->second, mt->minute, mt->hour, mt->day, mt->month, mt->year, 0, 0, -1};", newline, - string "mktime(&tm);", + string "mktime(&t);", newline, string "})"] | _ => box [string "buffer", @@ -717,6 +717,10 @@ string (Int.toString i), string ";", newline] + | Time => box [string "MYSQL_TIME buffer", + string (Int.toString i), + string ";", + newline] | _ => box [string (p_sql_ctype t), space, string "buffer", @@ -844,7 +848,7 @@ fun query {loc, cols, doCols} = box [string "uw_conn *conn = uw_get_db(ctx);", newline, - string "MYSQL_stmt *stmt = mysql_stmt_init(conn->conn);", + string "MYSQL_STMT *stmt = mysql_stmt_init(conn->conn);", newline, string "if (stmt == NULL) uw_error(ctx, FATAL, \"", string (ErrorMsg.spanToString loc), @@ -882,9 +886,7 @@ string (Int.toString i), string ";", newline] - | Time => box [string (p_sql_ctype t), - space, - string "in_buffer", + | Time => box [string "MYSQL_TIME in_buffer", string (Int.toString i), string ";", newline] @@ -1023,18 +1025,24 @@ | _ => box [string (p_sql_ctype t), space, + string "tmp = *arg", + string (Int.toString (i + 1)), + string ";", + newline, + string (p_sql_ctype t), + space, string "arg", string (Int.toString (i + 1)), - string " = *arg", - string (Int.toString (i + 1)), - string ";", + string " = tmp;", newline], string "in_is_null", string (Int.toString i), string " = 0;", newline, buffers t, - newline]] + newline], + string "}", + newline] | _ => buffers t, newline] @@ -1100,9 +1108,7 @@ string (Int.toString i), string ";", newline] - | Time => box [string (p_sql_ctype t), - space, - string "in_buffer", + | Time => box [string "MYSQL_TIME in_buffer", string (Int.toString i), string ";", newline] @@ -1241,18 +1247,24 @@ | _ => box [string (p_sql_ctype t), space, + string "tmp = *arg", + string (Int.toString (i + 1)), + string ";", + newline, + string (p_sql_ctype t), + space, string "arg", string (Int.toString (i + 1)), - string " = *arg", - string (Int.toString (i + 1)), - string ";", + string " = tmp;", newline], string "in_is_null", string (Int.toString i), string " = 0;", newline, buffers t, - newline]] + newline], + string "}", + newline] | _ => buffers t, newline] diff -r c50101ddf7fa -r 025806b3c014 src/postgres.sml --- a/src/postgres.sml Sun Jul 12 15:42:24 2009 -0400 +++ b/src/postgres.sml Sun Jul 12 16:09:54 2009 -0400 @@ -247,7 +247,7 @@ fun init {dbstring, prepared = ss, tables, views, sequences} = box [if #persistent (currentProtocol ()) then - box [string "void uw_client_init() { }", + box [string "void uw_client_init(void) { }", newline, newline, diff -r c50101ddf7fa -r 025806b3c014 src/sources --- a/src/sources Sun Jul 12 15:42:24 2009 -0400 +++ b/src/sources Sun Jul 12 16:09:54 2009 -0400 @@ -13,6 +13,9 @@ errormsg.sig errormsg.sml +print.sig +print.sml + settings.sig settings.sml @@ -31,9 +34,6 @@ mysql.sig mysql.sml -print.sig -print.sml - prim.sig prim.sml