Changeset: dc85db7d9402 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/dc85db7d9402
Modified Files:
clients/mapiclient/dump.c
clients/odbc/winsetup/install.c
common/stream/stdio_stream.c
geom/monetdb5/geom.c
monetdb5/mal/mal_session.c
sql/backends/monet5/UDF/capi/capi.c
sql/backends/monet5/sql.c
sql/backends/monet5/sql_bincopy.c
sql/backends/monet5/sql_bincopyconvert.c
sql/backends/monet5/sql_scenario.c
sql/backends/monet5/vaults/csv/csv.c
sql/server/sql_semantic.c
sql/storage/store.c
tools/monetdbe/monetdbe.c
Branch: default
Log Message:
Turn constant pointers to constant string into constant arrays.
diffs (truncated from 519 to 300 lines):
diff --git a/clients/mapiclient/dump.c b/clients/mapiclient/dump.c
--- a/clients/mapiclient/dump.c
+++ b/clients/mapiclient/dump.c
@@ -2654,9 +2654,9 @@ bailout:
int
dump_database(Mapi mid, stream *sqlf, const char *ddir, const char *ext, bool
describe, bool useInserts, bool noescape)
{
- const char *start_trx = "START TRANSACTION";
- const char *end = "ROLLBACK";
- const char *types =
+ const char start_trx[] = "START TRANSACTION";
+ const char end[] = "ROLLBACK";
+ const char types[] =
"SELECT s.name, "
"t.systemname, "
"t.sqlname "
@@ -2708,13 +2708,13 @@ dump_database(Mapi mid, stream *sqlf, co
"AND ui.name <> 'monetdb' "
"AND ui.name <> '.snapshot' "
"ORDER BY ui.name";
- const char *roles =
+ const char roles[] =
"SELECT name "
"FROM sys.auths "
"WHERE name NOT IN (SELECT name FROM sys.db_user_info) "
"AND grantor <> 0 "
"ORDER BY name";
- const char *grants =
+ const char grants[] =
/* all grants granting roles to users excepting the default
role */
"SELECT a1.name, "
"a2.name "
@@ -2727,7 +2727,7 @@ dump_database(Mapi mid, stream *sqlf, co
"AND a1.name = ui.name "
"AND a2.id <> ui.default_role "
"ORDER BY a1.name, a2.name";
- const char *table_grants =
+ const char table_grants[] =
"SELECT s.name, t.name, "
"a.name, "
"sum(p.privileges), "
@@ -2744,7 +2744,7 @@ dump_database(Mapi mid, stream *sqlf, co
"AND p.grantable = go.id "
"GROUP BY s.name, t.name, a.name, g.name, go.opt "
"ORDER BY s.name, t.name, a.name, g.name, go.opt";
- const char *column_grants =
+ const char column_grants[] =
"SELECT s.name, t.name, "
"c.name, a.name, "
"pc.privilege_code_name, "
@@ -2766,7 +2766,7 @@ dump_database(Mapi mid, stream *sqlf, co
"AND p.privileges = pc.privilege_code_id "
"AND p.grantable = go.id "
"ORDER BY s.name, t.name, c.name, a.name, g.name, p.grantable";
- const char *function_grants =
+ const char function_grants[] =
"SELECT f.id, "
"s.name, "
"f.name, "
@@ -2803,7 +2803,7 @@ dump_database(Mapi mid, stream *sqlf, co
"f.id, "
"a.inout DESC, "
"a.number";
- const char *global_grants =
+ const char global_grants[] =
"SELECT a.name, pc.grnt, g.name, go.opt "
"FROM sys.privileges p, "
"sys.auths a, "
@@ -2816,22 +2816,22 @@ dump_database(Mapi mid, stream *sqlf, co
"AND p.privileges = pc.id "
"AND p.grantable = go.id "
"ORDER BY a.name, g.name, go.opt";
- const char *schemas =
+ const char schemas[] =
"SELECT s.name, a.name, rem.remark "
"FROM sys.schemas s LEFT OUTER JOIN sys.comments rem ON s.id =
rem.id, "
"sys.auths a "
"WHERE s.\"authorization\" = a.id "
"AND s.system = FALSE "
"ORDER BY s.name";
- const char *sequences1 =
+ const char sequences1[] =
"SELECT sch.name, seq.name, rem.remark "
"FROM sys.schemas sch, "
"sys.sequences seq LEFT OUTER JOIN sys.comments rem ON
seq.id = rem.id "
"WHERE sch.id = seq.schema_id "
"ORDER BY sch.name, seq.name";
- const char *sequences2 =
+ const char sequences2[] =
"SELECT * FROM sys.describe_sequences ORDER BY sch, seq";
- const char *tables =
+ const char tables[] =
"SELECT t.id AS id, "
"s.name AS sname, "
"t.name AS name, "
@@ -2891,7 +2891,7 @@ dump_database(Mapi mid, stream *sqlf, co
"ORDER BY t1.id, t2.id";
/* we must dump views, functions/procedures and triggers in order
* of creation since they can refer to each other */
- const char *views_functions_triggers =
+ const char views_functions_triggers[] =
"with vft (sname, name, id, query, remark) AS ("
"SELECT s.name AS sname, " /* views */
"t.name AS name, "
diff --git a/clients/odbc/winsetup/install.c b/clients/odbc/winsetup/install.c
--- a/clients/odbc/winsetup/install.c
+++ b/clients/odbc/winsetup/install.c
@@ -22,10 +22,10 @@
#define DLL ".dll"
#endif
-static const char *DriverName = "MonetDB ODBC Driver";
-static const char *DataSourceName = "MonetDB";
-static const char *DriverDLL = "MonetODBC" DLL;
-static const char *DriverDLLs = "MonetODBCs" DLL;
+static const char DriverName[] = "MonetDB ODBC Driver";
+static const char DataSourceName[] = "MonetDB";
+static const char DriverDLL[] = "MonetODBC" DLL;
+static const char DriverDLLs[] = "MonetODBCs" DLL;
/* General error handler for installer functions */
@@ -85,7 +85,7 @@ InstallMyDriver(const char *driverpath,
/* the correct format of driver keywords are
* "DriverName\0Driver=...\xxxxxx.DLL\0Setup=...\xxxxxx.DLL\0\0" */
- size_t driverlen = strlen(drivername) + 2 * strlen(driverpath) +
strlen(DriverDLL) + strlen(DriverDLLs) + 90;
+ size_t driverlen = strlen(drivername) + 2 * strlen(driverpath) +
sizeof(DriverDLL) + sizeof(DriverDLLs) + 90;
char *driver = malloc(driverlen);
snprintf(driver, driverlen,
"%s;Driver=%s\\%s;Setup=%s\\%s;APILevel=1;"
diff --git a/common/stream/stdio_stream.c b/common/stream/stdio_stream.c
--- a/common/stream/stdio_stream.c
+++ b/common/stream/stdio_stream.c
@@ -372,7 +372,7 @@ file_wstream(FILE *restrict fp, bool bin
stream *
stdin_rastream(void)
{
- const char *name = "<stdin>";
+ const char name[] = "<stdin>";
// Make an attempt to skip a BOM marker.
// It would be nice to integrate this with with the BOM removal code
// in text_stream.c but that is complicated. In text_stream,
@@ -403,7 +403,7 @@ stdin_rastream(void)
stream *
stdout_wastream(void)
{
- const char *name = "<stdout>";
+ const char name[] = "<stdout>";
#ifdef _MSC_VER
if (isatty(fileno(stdout)))
return win_console_out_stream(name);
@@ -414,7 +414,7 @@ stdout_wastream(void)
stream *
stderr_wastream(void)
{
- const char *name = "<stderr>";
+ const char name[] = "<stderr>";
#ifdef _MSC_VER
if (isatty(fileno(stderr)))
return win_console_out_stream(name);
diff --git a/geom/monetdb5/geom.c b/geom/monetdb5/geom.c
--- a/geom/monetdb5/geom.c
+++ b/geom/monetdb5/geom.c
@@ -2648,7 +2648,7 @@ wkbAsText(char **txt, wkb **geomWKB, int
{
size_t len = 0;
char *wkt = NULL;
- const char *sridTxt = "SRID:";
+ const char sridTxt[] = "SRID:";
if (is_wkb_nil(*geomWKB) || (withSRID && is_int_nil(*withSRID))) {
if ((*txt = GDKstrdup(str_nil)) == NULL)
diff --git a/monetdb5/mal/mal_session.c b/monetdb5/mal/mal_session.c
--- a/monetdb5/mal/mal_session.c
+++ b/monetdb5/mal/mal_session.c
@@ -156,7 +156,7 @@ exit_streams(bstream *fin, stream *fout)
bstream_destroy(fin);
}
-const char *mal_enableflag = "mal_for_all";
+static const char mal_enableflag[] = "mal_for_all";
static bool
is_exiting(void *data)
diff --git a/sql/backends/monet5/UDF/capi/capi.c
b/sql/backends/monet5/UDF/capi/capi.c
--- a/sql/backends/monet5/UDF/capi/capi.c
+++ b/sql/backends/monet5/UDF/capi/capi.c
@@ -36,9 +36,9 @@
#pragma GCC diagnostic ignored "-Wclobbered"
#endif
-const char *mprotect_enableflag = "enable_mprotect";
+static const char mprotect_enableflag[] = "enable_mprotect";
static bool option_enable_mprotect = false;
-const char *longjmp_enableflag = "enable_longjmp";
+static const char longjmp_enableflag[] = "enable_longjmp";
static bool option_enable_longjmp = false;
typedef struct _allocated_region {
@@ -342,12 +342,14 @@ static void blob_initialize(struct cudf_
bat_data->null_value = tpe##_nil;
\
}
-const char *debug_flag = "capi_use_debug";
-const char *cc_flag = "capi_cc";
-const char *cpp_flag = "capi_cpp";
+#ifdef NDEBUG
+static const char debug_flag[] = "capi_use_debug";
+#endif
+static const char cc_flag[] = "capi_cc";
+static const char cpp_flag[] = "capi_cpp";
-const char *cflags_pragma = "#pragma CFLAGS ";
-const char *ldflags_pragma = "#pragma LDFLAGS ";
+static const char cflags_pragma[] = "#pragma CFLAGS ";
+static const char ldflags_pragma[] = "#pragma LDFLAGS ";
#define JIT_COMPILER_NAME "cc"
#define JIT_CPP_COMPILER_NAME "c++"
@@ -481,7 +483,7 @@ static str CUDFeval(Client cntxt, MalBlk
:
JIT_CPP_COMPILER_NAME)
: (GDKgetenv(cc_flag) ? GDKgetenv(cc_flag) :
JIT_COMPILER_NAME);
- const char *struct_prefix = "struct cudf_data_struct_";
+ const char struct_prefix[] = "struct cudf_data_struct_";
const char *funcname;
BUN expression_hash = 0, funcname_hash = 0;
@@ -672,7 +674,7 @@ static str CUDFeval(Client cntxt, MalBlk
// we place the temporary files in the DELDIR directory
// because this will be removed again upon server startup
const int RANDOM_NAME_SIZE = 32;
- const char *prefix = TEMPDIR_NAME DIR_SEP_STR;
+ const char prefix[] = TEMPDIR_NAME DIR_SEP_STR;
size_t prefix_size = strlen(prefix);
char *deldirpath;
diff --git a/sql/backends/monet5/sql.c b/sql/backends/monet5/sql.c
--- a/sql/backends/monet5/sql.c
+++ b/sql/backends/monet5/sql.c
@@ -346,7 +346,7 @@ create_table_or_view(mvc *sql, char *sna
if (c->def) {
/* TODO please don't place an auto incremented sequence
in the default value */
- const char *next_value_for = "next value for
\"sys\".\"seq_";
+ const char next_value_for[] = "next value for
\"sys\".\"seq_";
sql_rel *r = NULL;
sa_reset(nsa);
@@ -1983,7 +1983,7 @@ mvc_clear_table_wrap(Client cntxt, MalBl
throw(SQL, "sql.clear_table", SQLSTATE(42000) "Table clear
failed%s", clear_res == (BUN_NONE - 1) ? " due to conflict with another
transaction" : "");
if (restart_sequences) { /* restart the sequences if it's the case */
sql_trans *tr = m->session->tr;
- const char *next_value_for = "next value for ";
+ const char next_value_for[] = "next value for ";
for (node *n = ol_first_node(t->columns); n; n = n->next) {
sql_column *col = n->data;
diff --git a/sql/backends/monet5/sql_bincopy.c
b/sql/backends/monet5/sql_bincopy.c
--- a/sql/backends/monet5/sql_bincopy.c
+++ b/sql/backends/monet5/sql_bincopy.c
@@ -34,7 +34,7 @@
static str
load_trivial(BAT *bat, stream *s, const char *filename, bincopy_validate_t
validate, int width, BUN rows_estimate, int *eof_seen)
{
- const char *mal_operator = "sql.importColumn";
+ const char mal_operator[] = "sql.importColumn";
str msg = MAL_SUCCEED;
int tt = BATttype(bat);
const size_t asz = (size_t) ATOMsize(tt);
@@ -114,7 +114,7 @@ end:
static str
load_fixed_width(BAT *bat, stream *s, const char *filename, int width, bool
byteswap, bincopy_decoder_t convert, bincopy_validate_t validate, size_t
record_size, int *eof_reached)
{
- const char *mal_operator = "sql.importColumn";
+ const char mal_operator[] = "sql.importColumn";
str msg = MAL_SUCCEED;
bstream *bs = NULL;
@@ -184,7 +184,7 @@ end:
static str
load_column(type_record_t *rec, const char *name, BAT *bat, stream *s, int
width, bool byteswap, BUN rows_estimate, int *eof_reached)
{
- const char *mal_operator = "sql.importColumn";
+ const char mal_operator[] = "sql.importColumn";
BUN orig_count, new_count;
str msg = MAL_SUCCEED;
BUN rows_added;
@@ -328,7 +328,7 @@ mvc_bin_import_column_wrap(Client cntxt,
static str
write_out(const char *start, const char *end, stream *s)
{
- const char *mal_operator = "sql.export_bin_column";
+ const char mal_operator[] = "sql.export_bin_column";
str msg = MAL_SUCCEED;
const char *p = start;
@@ -356,7 +356,7 @@ dump_trivial(BAT *b, stream *s, BUN star
static str
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]