MISRA changes
diff --git a/src/packages/xdc/runtime/Error.c b/src/packages/xdc/runtime/Error.c
index 3544a64..82edccd 100644
--- a/src/packages/xdc/runtime/Error.c
+++ b/src/packages/xdc/runtime/Error.c
@@ -1,5 +1,5 @@
 /* --COPYRIGHT--,ESD
- *  Copyright (c) 2008-2018 Texas Instruments Incorporated
+ *  Copyright (c) 2008-2019 Texas Instruments Incorporated
  *  This program and the accompanying materials are made available under the
  *  terms of the Eclipse Public License v1.0 and Eclipse Distribution License
  *  v. 1.0 which accompanies this distribution. The Eclipse Public License is
@@ -171,7 +171,9 @@
     else if (eb != &xdc_runtime_Error_IgnoreBlock) {
         eb->id = id;
     }
-    return;
+    else {
+        return;
+    }
 }
 
 /*
diff --git a/src/packages/xdc/runtime/Error.xdt b/src/packages/xdc/runtime/Error.xdt
index 53b25ee..494e8b4 100644
--- a/src/packages/xdc/runtime/Error.xdt
+++ b/src/packages/xdc/runtime/Error.xdt
@@ -1,5 +1,5 @@
 xdc_runtime_Error_Block xdc_runtime_Error_IgnoreBlock = {
-    ~0, /* unused */
+    ~0U, /* unused */
     {
         {0, 0} /* data */
     },
diff --git a/src/packages/xdc/runtime/System.c b/src/packages/xdc/runtime/System.c
index 79d2a4c..a61d94c 100644
--- a/src/packages/xdc/runtime/System.c
+++ b/src/packages/xdc/runtime/System.c
@@ -631,5 +631,8 @@
         else if (System_SupportProxy_ready()) {
             System_SupportProxy_putch(c);
         }
+        else {
+            return;
+        }
     }
 }
diff --git a/src/packages/xdc/runtime/System.xdt b/src/packages/xdc/runtime/System.xdt
index 945a665..9a8f5d6 100644
--- a/src/packages/xdc/runtime/System.xdt
+++ b/src/packages/xdc/runtime/System.xdt
@@ -54,7 +54,6 @@
 xdc_Int xdc_runtime_System_printfExtend__I(xdc_Char **pbuf, xdc_CString *pfmt,
     xdc_VaList *pva, xdc_runtime_System_ParseData *parse)
 {
-    xdc_CString fmt = *pfmt;
     xdc_Int     res;
     xdc_Char    c;
     xdc_Bool    found = FALSE;
@@ -69,7 +68,7 @@
 %}
     res = 0;
 
-    c = *fmt++;
+    c = **pfmt;
     *pfmt = *pfmt + 1;
 
 %/* Only include the code to check for '$' if the extendedFormats */
@@ -78,16 +77,16 @@
 %if (System.extendedFormats && (System.extendedFormats.search(regexp) != -1)) {
 
     if (c == '$') {
-        c = *fmt++;
+        c = **pfmt;
         *pfmt = *pfmt + 1;
 
 %    /* %$L - formats a Types.Label */
 %    var regexp = /%\$L/;
-%    if (System.extendedFormats && 
+%    if (System.extendedFormats &&
 %        (System.extendedFormats.search(regexp) != -1)) {
 %
         if (c == 'L') {
-            xdc_runtime_Types_Label *lab = parse->aFlag ? 
+            xdc_runtime_Types_Label *lab = (parse->aFlag == TRUE) ?
                 (xdc_runtime_Types_Label *)xdc_iargToPtr(va_arg(`vav`, xdc_IArg)) :
                 (xdc_runtime_Types_Label *)va_arg(`vav`, void *);
 
@@ -120,12 +119,14 @@
             xdc_runtime_Types_Site site;
 
             /* Retrieve the file name string from the argument list */
-            site.file = parse->aFlag ? (xdc_Char *) xdc_iargToPtr(va_arg(`vav`, xdc_IArg)) :
-                                       (xdc_Char *) va_arg(`vav`, xdc_Char *);
+            site.file = (parse->aFlag == TRUE) ?
+                (xdc_Char *) xdc_iargToPtr(va_arg(`vav`, xdc_IArg)) :
+                (xdc_Char *) va_arg(`vav`, xdc_Char *);
 
             /* Retrieve the line number from the argument list. */
-            site.line = parse->aFlag ? (xdc_Int) va_arg(`vav`, xdc_IArg) :
-                                       (xdc_Int) va_arg(`vav`, xdc_Int);
+            site.line = (parse->aFlag == TRUE) ?
+                (xdc_Int) va_arg(`vav`, xdc_IArg) :
+                (xdc_Int) va_arg(`vav`, xdc_Int);
 
             /*
              * Omit the 'mod' field, set it to 0.
@@ -163,7 +164,7 @@
 %
         if (c == 'S') {
             /* Retrieve the format string from the argument list */
-            parse->ptr = parse->aFlag ?
+            parse->ptr = (parse->aFlag == TRUE) ?
                 (xdc_Char *) xdc_iargToPtr(va_arg(`vav`, xdc_IArg)) :
                 (xdc_Char *) va_arg(`vav`, xdc_Char *);
 %        if (!arrayTypeVaList) {
@@ -213,7 +214,7 @@
         `UNum`  fract;
         xdc_Int    negative;
 
-        if (parse->aFlag) {
+        if (parse->aFlag == TRUE) {
             xdc_runtime_Assert_isTrue((sizeof(xdc_Float) <= sizeof(xdc_IArg)),
                 xdc_runtime_System_A_cannotFitIntoArg);
 
@@ -272,7 +273,7 @@
 %} else {
     if (c == 'f') {
         /* support arguments _after_ optional float support */
-        if (parse->aFlag) {
+        if (parse->aFlag == TRUE) {
             (void)va_arg(`vav`, xdc_IArg);
         }
         else {
diff --git a/src/packages/xdc/runtime/Text.xdc b/src/packages/xdc/runtime/Text.xdc
index 2b41964..92f6e52 100644
--- a/src/packages/xdc/runtime/Text.xdc
+++ b/src/packages/xdc/runtime/Text.xdc
@@ -1,5 +1,5 @@
 /* --COPYRIGHT--,ESD
- *  Copyright (c) 2008-2017 Texas Instruments Incorporated
+ *  Copyright (c) 2008-2019 Texas Instruments Incorporated
  *  This program and the accompanying materials are made available under the
  *  terms of the Eclipse Public License v1.0 and Eclipse Distribution License
  *  v. 1.0 which accompanies this distribution. The Eclipse Public License is
@@ -75,7 +75,7 @@
      *  The name of an instance if the module's instances are configured to
      *  not have names.
      */
-    config String nameUnknown = "{unknown-instance-name}";
+    config CString nameUnknown = "{unknown-instance-name}";
 
     /*!
      *  ======== nameEmpty ========
@@ -83,7 +83,7 @@
      *
      *  The name used if the instance's name has been set to `NULL`.
      */
-    config String nameEmpty = "{empty-instance-name}";
+    config CString nameEmpty = "{empty-instance-name}";
 
     /*!
      *  ======== nameStatic ========
@@ -92,7 +92,7 @@
      *  The name of an instance if the name exists but it's not loaded
      *  on the target.
      */
-    config String nameStatic = "{static-instance-name}";
+    config CString nameStatic = "{static-instance-name}";
 
     /*!
      *  ======== isLoaded ========
@@ -313,7 +313,17 @@
  */
 //    config Int16 unnamedModCnt = 0;
 
-    function defineRopeCord(text); 
+    /*!
+     *  ======== defineRopeCord ========
+     *  Put text in charTab[] and return its offset within charTab
+     */
+    function defineRopeCord(text);
+
+    /*!
+     *  ======== defineRopeNode ========
+     *  Create a new Node structure, add it to nodeTabe, and return nodeId,
+     *  which is an offset within nodeTab with the leftmost bit set.
+     */
     function defineRopeNode(left, right);
 
     function fetchAddr(raddr);