removal of more dead strings....
diff --git a/packages/xdc/runtime/Core.xdc b/packages/xdc/runtime/Core.xdc
index 09abf7d..8071365 100644
--- a/packages/xdc/runtime/Core.xdc
+++ b/packages/xdc/runtime/Core.xdc
@@ -49,6 +49,9 @@
internal:
+ config String S_CREATE_POLICY_ERROR = "create policy error";
+ config String S_DELETE_POLICY_ERROR = "delete policy error";
+
struct ObjDesc {
Ptr fxnTab;
Types.Link *modLink;
diff --git a/packages/xdc/runtime/Log.c b/packages/xdc/runtime/Log.c
index cc36fd5..c7a6182 100644
--- a/packages/xdc/runtime/Log.c
+++ b/packages/xdc/runtime/Log.c
@@ -27,13 +27,13 @@
* 32-bit format strings
*/
#if (xdc_target__bitsPerChar * xdc_target__sizeof_Int) == 32
-#define SERIAL "#%010u "
-#define HI "%0.8x:"
-#define LO "%0.8x] "
+static const Char SERIAL[] = "#%010u ";
+static const Char HI[] = "%0.8x:";
+static const Char LO[] = "%0.8x] ";
#elif (xdc_target__bitsPerChar * xdc_target__sizeof_Long) == 32
-#define SERIAL "#%010lu "
-#define HI "%0.8lx:"
-#define LO "%0.8lx] "
+static const Char SERIAL[] = "#%010lu ";
+static const Char HI[] = "%0.8lx:";
+static const Char LO[] = "%0.8lx] ";
#else
#error xdc.runtime.Log does not support this target.
#endif
@@ -48,6 +48,10 @@
String fmt;
Bits32 hi, lo;
+ static const Char STR_FMT[] = "{evt: fmt=%p, args=[0x%x, 0x%x ...]}";
+ static const Char STR_PRE[] = "[t=0x";
+ static const Char STR_SEP[] = ": ";
+
/* print serial number if there is one; 0 isn't a valid serial number */
if (er->serial) {
System_printf(SERIAL, er->serial);
@@ -57,7 +61,7 @@
hi = er->tstamp.hi;
lo = er->tstamp.lo;
if (lo != ~0 && hi != ~0) {
- System_printf("[t=0x");
+ System_printf(STR_PRE);
if (hi) {
System_printf(HI, hi);
}
@@ -66,7 +70,7 @@
/* print module name */
Text_putMod((Text_RopeId)Types_getModuleId(er->evt), NULL, -1);
- System_printf(": ");
+ System_printf(STR_SEP);
/* print event */
rope = Types_getEventId(er->evt); /* the event id is the message rope */
@@ -85,7 +89,7 @@
er->arg[4], er->arg[5], er->arg[6], er->arg[7]);
}
else {
- System_aprintf("{evt: fmt=%p, args=[0x%x, 0x%x ...]}",
+ System_aprintf(STR_FMT,
fmt, er->arg[0], er->arg[1]);
}
}
diff --git a/packages/xdc/runtime/Startup.c b/packages/xdc/runtime/Startup.c
index db9b917..ba8ccc1 100644
--- a/packages/xdc/runtime/Startup.c
+++ b/packages/xdc/runtime/Startup.c
@@ -54,6 +54,8 @@
*/
Void Startup_startMods(Int state[], Int len)
{
+// static const Char STR_MSG[] = "xdc.runtime.Startup: 'maxPasses' exceeded";
+
Int curPass;
Int i;
Bool done;
@@ -85,7 +87,7 @@
}
if (!done) {
- System_abort("xdc.runtime.Startup: 'maxPasses' exceeded");
+ System_abort(Startup_errorMsg);
}
module->stateTab = NULL;
diff --git a/packages/xdc/runtime/Startup.xdc b/packages/xdc/runtime/Startup.xdc
index e0eb72b..fbc179b 100644
--- a/packages/xdc/runtime/Startup.xdc
+++ b/packages/xdc/runtime/Startup.xdc
@@ -121,6 +121,12 @@
config Int maxPasses = 32;
/*!
+ * ======== errorMsg ========
+ * Message to print when startup diverges
+ */
+ config String errorMsg = "xdc.runtime.Startup: 'maxPasses' exceeded";
+
+ /*!
* ======== InitFxn ========
* Type of function assignable to `firstFxns`, `lastFxns`, or `resetFxn`
*/
diff --git a/packages/xdc/runtime/System.c b/packages/xdc/runtime/System.c
index fc8d0e4..25972c5 100644
--- a/packages/xdc/runtime/System.c
+++ b/packages/xdc/runtime/System.c
@@ -31,8 +31,6 @@
*/
#define OUTMAX ((32 + 2) / 3) + 5
-static const Char digtohex[] = "0123456789abcdef";
-
/*
* ======== System_Module_startup ========
*/
@@ -217,6 +215,8 @@
Int res;
Char outbuf[OUTMAX];
+ static const Char STR_NULL[] = "(null)";
+
/* vars passed to System_extendFxn. Also keep track in while loop */
struct System_ParseData parse;
@@ -360,7 +360,7 @@
/* substitute (null) for NULL pointer */
if (parse.ptr == (char *)NULL) {
- parse.ptr = "(null)";
+ parse.ptr = (char *)STR_NULL;
}
parse.len = strlen(parse.ptr);
if (parse.precis != -1 && parse.precis < parse.len) {
@@ -420,6 +420,8 @@
*/
Char *System_formatNum(Char *ptr, UInt32 un, Int zpad, Int base)
{
+ static const Char STR_HEXDIGS[] = "0123456789abcdef";
+
Int i = 0;
Char sign = 0;
@@ -440,7 +442,7 @@
/* compute digits in number from right to left */
do {
- *(--ptr) = digtohex[(Int) (n % base)];
+ *(--ptr) = STR_HEXDIGS[(Int) (n % base)];
n = n / base;
++i;
} while (n);
diff --git a/packages/xdc/runtime/Text.c b/packages/xdc/runtime/Text.c
index 9179401..9a0a6d7 100644
--- a/packages/xdc/runtime/Text.c
+++ b/packages/xdc/runtime/Text.c
@@ -97,13 +97,15 @@
*/
Bool Text_printVisFxn(Ptr obj, String src)
{
+ static const Char STR_FMT[] = "%.*s";
+
Text_PrintVisState *state = obj;
if (state->len == 0) {
return (TRUE);
}
else {
- Int oc = Text_xprintf(state->bufp, "%.*s", state->len, src);
+ Int oc = Text_xprintf(state->bufp, STR_FMT, state->len, src);
state->res += oc;
if (state->len > 0) {
state->len -= oc;
@@ -118,17 +120,20 @@
*/
Int Text_putLab(Types_Label *lab, Char **bufp, Int len)
{
+ static const Char STR_FMT1[] = "%p";
+ static const Char STR_FMT2[] = "('%s')";
+
Int res;
res = Text_putMod(lab->modId, bufp, len);
if (len < 0 || (len - res) > 8) { /* need at most 9 characters for "%p" */
- res += Text_xprintf(bufp, "%p", lab->handle);
+ res += Text_xprintf(bufp, STR_FMT1, lab->handle);
}
if (lab->named
&& (len < 0 || (len - res) >= (4 + (Int)strlen(lab->iname))) ) {
- res += Text_xprintf(bufp, "('%s')", lab->iname);
+ res += Text_xprintf(bufp, STR_FMT2, lab->iname);
}
return (res);
@@ -139,14 +144,17 @@
*/
Int Text_putMod(Types_ModuleId mid, Char **bufp, Int len)
{
+ static const Char STR_FMT1[] = "{module#%d}";
+ static const Char STR_FMT2[] = "{module-rope:%x}";
+
Text_PrintVisState state;
if (mid < 0x8000) {
- return (Text_xprintf(bufp, "{module#%d}", mid));
+ return (Text_xprintf(bufp, STR_FMT1, mid));
}
if (!Text_isLoaded) {
- return (Text_xprintf(bufp, "{module-rope:%x}", mid));
+ return (Text_xprintf(bufp, STR_FMT2, mid));
}
state.bufp = bufp;
@@ -164,6 +172,10 @@
*/
Int Text_putSite(Types_Site *site, Char **bufp, Int len)
{
+ static const Char STR_FMT1[] = ": ";
+ static const Char STR_FMT2[] = "\"%s\"";
+ static const Char STR_FMT3[] = "line %d: ";
+
Int res;
Int max = len < 0 ? 0x7fff : len; /* 0x7fff == infinite, well almost */
@@ -175,21 +187,21 @@
max -= (res + 2); /* +2 for the ": " string below */
if (max > 0) {
- res += Text_xprintf(bufp, ": ");
+ res += Text_xprintf(bufp, STR_FMT1);
if (site->line == 0) {
return (res);
}
if (site->file && (max >= ((Int)strlen(site->file) + 4))) {
- Int oc = Text_xprintf(bufp, "\"%s\", ", site->file);
+ Int oc = Text_xprintf(bufp, STR_FMT2, site->file);
res += oc;
max -= oc;
}
/* 7 = length of "line : ", 10 = max decimal digits in 32-bit number */
if (max >= (7 + 10)) {
- res += Text_xprintf(bufp, "line %d: ", site->line);
+ res += Text_xprintf(bufp, STR_FMT3, site->line);
}
}
diff --git a/packages/xdc/services/intern/gen/Config.java b/packages/xdc/services/intern/gen/Config.java
index 44f5642..9e78b4f 100644
--- a/packages/xdc/services/intern/gen/Config.java
+++ b/packages/xdc/services/intern/gen/Config.java
@@ -501,10 +501,11 @@
/*
* ======== genError ========
*/
- private void genError( Unit unit, String msg )
+ private void genError( Unit unit, String kind )
{
- glob.out.printf("%t%1_raiseX(NULL, %2Module__id__C, NULL, 0, %1_E_generic, (xdc_IArg)\"%3\", 0);\n",
- "xdc_runtime_Error", glob.cname, msg);
+ String msgC = "xdc_runtime_Core_S_" + kind + "_POLICY_ERROR__C";
+ glob.out.printf("%t%1_raiseX(NULL, %2Module__id__C, NULL, 0, %1_E_generic, (xdc_IArg)%3, 0);\n",
+ "xdc_runtime_Error", glob.cname, msgC);
}
/*
@@ -2434,7 +2435,7 @@
glob.out.printf("%-}\n");
}
else {
- genError(unit, "create policy error");
+ genError(unit, "CREATE");
glob.out.printf("%treturn NULL;\n");
glob.out.printf("%-}\n");
}
@@ -2463,11 +2464,11 @@
else {
glob.genTitleD("Object__destruct__S");
glob.out.printf("xdc_Void %1Object__destruct__S( xdc_Ptr obj ) \n{\n%+", glob.cname);
- genError(unit, "delete policy error");
+ genError(unit, "DELETE");
glob.out.printf("%-}\n");
glob.genTitleD("Object__delete__S");
glob.out.printf("xdc_Void %1Object__delete__S( xdc_Ptr instp ) \n{\n%+", glob.cname);
- genError(unit, "delete policy error");
+ genError(unit, "DELETE");
glob.out.printf("%-}\n");
}
}