minor comment/while space cleanup
diff --git a/src/packages/xdc/rov/Program.xdc b/src/packages/xdc/rov/Program.xdc
index 89bc87a..ef3afb2 100644
--- a/src/packages/xdc/rov/Program.xdc
+++ b/src/packages/xdc/rov/Program.xdc
@@ -137,6 +137,12 @@
      *  @param(tabName)  Name of the tab to retrieve the views for.
      *
      *  @a(Returns)  Array of Instance_View structures, one for each isntance.
+     *
+     *  @a(Throws)  Throws an exception in the event that a memory read of
+     *              the specified instance view fails, the specified `tabName`
+     *              isn't recognized, the specified `modName` doesn't support
+     *              instances, or the module `modName` is not configured into
+     *              the current program.
      */
     Any scanInstanceView(String modName, String tabName);
     
@@ -147,19 +153,35 @@
      *  @param(modName)  Full module name to return the view for.
      *  @param(tabName)  Name of the tab to retreive the view for.
      *
-     *  @(returns)  Module_View structure.
+     *  @(Returns)  Module_View structure.
+     *
+     *  @a(Throws)  Throws an exception in the event that a memory read of
+     *              the specified module view fails, the specified `tabName`
+     *              isn't recognized, or the module `modName` is not
+     *              configured into the current program.
      */
     Any scanModuleView(String modName, String tabName);
     
     /*!
      *  ======== scanInstanceDataView ========
+     *  Retrieve a module's specified INSTANCE_DATA type view 
      *
+     *  @a(Throws)  Throws an exception in the event that a memory read of
+     *              the module's Raw view or any instance fails, the specified
+     *              `tabName` isn't recognized, the specified `modName`
+     *              doesn't support instances, or the module `modName` is not
+     *              configured into the current program.
      */
     InstDataViewArr scanInstanceDataView(String modName, String tabName);
 
     /*!
      *  ======== scanModuleDataView ========
+     *  Retrieve a module's specified MODULE_DATA type view 
      *
+     *  @a(Throws)  Throws an exception in the event that a memory read of
+     *              the specified module view fails, the specified `tabName`
+     *              isn't recognized, or the module `modName` is not
+     *              configured into the current program.
      */    
     ModDataView scanModuleDataView(String modName, String tabName);
     
@@ -169,7 +191,17 @@
      *
      *  @param(modName)  Full module name to return the raw view for.
      *
-     *  @(returns) A RawView structure which contains the raw data.
+     *  @(Returns) A RawView structure which contains the raw data.
+     *
+     *  @a(Throws)  Throws an exception in the event that a memory read of
+     *              the specified instance view fails, the specified `tabName`
+     *              isn't recognized, the specified `modName` doesn't support
+     *              instances, or the module `modName` is not configured into
+     *              the current program.
+     *
+     *  @a(Throws)  Throws an exception in the event that a memory read of
+     *              the module's Raw view fails, or the module `modName` is
+     *              not configured into the current program.
      */
     RawView scanRawView(String modName);
     
@@ -190,11 +222,17 @@
      *  Used from a view$init function to scan a single instance of a 
      *  different module given that instance's address.
      *
-     *  @param(modName)   Full module name to return the raw view for.
-     *  @param(instAddr)  Address of instance to scan.
-     *  @param(tabName)   Name of the tab to retrieve the view for.
+     *  @param(modName)  Full module name to return the raw view for.
+     *  @param(instAddr) Address of instance to scan.
+     *  @param(tabName)  Name of the tab to retrieve the view for.
      *  
      *  @a(Returns) An Instance_View object for the requested view.
+     *
+     *  @a(Throws)  Throws an exception in the event that a memory read of
+     *              the specified instance view fails, the specified `tabName`
+     *              isn't recognized, the specified `modName` doesn't support
+     *              instances, or the module `modName` is not configured into
+     *              the current program.
      */
     Any scanHandleView(String modName, Ptr instAddr, String tabName);
     
@@ -213,11 +251,16 @@
      *  the target, since the state structure was already read as part of 
      *  reading it's parent structure.
      *
-     *  @param(modName)  Full module name to return the view for.
-     *  @param(obj)      Actual object to retrieve the view for.
-     *  @param(tabName)  Name of the tab to retrieve the view for.
+     *  @param(modName) Full module name to return the view for.
+     *  @param(obj)     Actual object to retrieve the view for.
+     *  @param(tabName) Name of the tab to retrieve the view for.
      *
      *  @a(Returns) An Instance_View object for the requested view.
+     *
+     *  @a(Throws)  Throws an exception in the event that the specified
+     *              `tabName` isn't recognized, the specified `modName`
+     *              doesn't support instances, or the module `modName` is not
+     *              configured into the current program.
      */
     Any scanObjectView(String modName, Any obj, String tabName);
     
@@ -228,14 +271,18 @@
      *  ======== fetchStruct ========
      *  Retrieve the specified structure from the target
      *
-     *  @param(desc)  Fetch descriptor for the structure, indicating the type
-     *                of the structure.
-     *  @param(addr)  Address of the structure to fetch.
+     *  @param(desc) Fetch descriptor for the structure, indicating the type
+     *               of the structure.
+     *  @param(addr) Address of the structure to fetch.
      *  @param(addrCheck)  Optional, defaults to true. Indicates whether the
      *                     memory image should validate the read by comparing
      *                     the address to section information.
      *
      *  @a(Returns)  Returns the requested structure as a javascript object.
+     *
+     *  @a(Throws)  Throws an exception in the event that `addr` is not in
+     *              the program's memory map or some error occurs that
+     *              prevents memory from being read.
      */
     Any fetchStruct(FetchDesc desc, Ptr addr, Bool addrCheck = true);
     
@@ -243,15 +290,19 @@
      *  ======== fetchArray ========
      *  Retrieve the specified array from the target
      *
-     *  @param(desc)  Fetch descriptor for the array, indicating the type of
-     *                data in the array.
-     *  @param(addr)  Address of the array to fetch.
-     *  @param(len)   The number of arrray elements to fetch.
+     *  @param(desc) Fetch descriptor for the array, indicating the type of
+     *               data in the array.
+     *  @param(addr) Address of the array to fetch.
+     *  @param(len)  The number of arrray elements to fetch.
      *  @param(addrCheck)  Optional, defaults to true. Indicates whether the
      *                     memory image should validate the read by comparing
      *                     the address to section information.
      *
      *  @a(Returns)  Returns a JavaScript array with the data in it.
+     *
+     *  @a(Throws)   Throws an exception in the event that `addr` is not in
+     *               the program's memory map, some error occurs that
+     *               prevents memory from being read, or if `len` = 0.
      */
     Any fetchArray(FetchDesc desc, Ptr addr, Int len, Bool addrCheck = true);
     
@@ -259,12 +310,16 @@
      *  ======== fetchString ========
      *  Retrieve a string from the target
      *
-     *  @param(addr)  Address of the string.
+     *  @param(addr) Address of the string.
      *  @param(addrCheck)  Optional, defaults to true. Indicates whether the
      *                     memory image should validate the read by comparing
      *                     the address to section information.
      *
      *  @a(Returns)  Requested string.
+     *
+     *  @a(Throws)   Throws an exception in the event that `addr` is not in
+     *               the program's memory map or some error occurs that
+     *               prevents memory from being read.
      */
     String fetchString(Ptr addr, Bool addrCheck = true);
     
@@ -277,9 +332,9 @@
      *  performing a target memory read. For this reason, it should only be
      *  used on static strings and not dynamic ones.
      *
-     *  @param(addr)  Address of the string.
+     *  @param(addr)  Address of the string
      *
-     *  @a(Returns)  Requested string.
+     *  @a(Returns)  Requested string or `null` if it can't be found.
      */
     String fetchStaticString(Ptr addr);
     
@@ -292,10 +347,10 @@
      *
      *  This object includes the common$ config params.
      *
-     *  @param(modName)  Full module name to get the configs for.
+     *  @param(modName) Full module name to get the configs for.
      *  
-     *  @a(Returns)  Object containing all of the module configs and
-     *               their values.
+     *  @a(Returns)     Object containing all of the module configs and
+     *                  their values.
      */
     Any getModuleConfig(String modName);
     
@@ -326,7 +381,7 @@
      *  memory) and use lookupDataSymbol to get data symbols (for symbols in
      *  DATA memory).
      *
-     *  @param(addr)  Address of symbols
+     *  @param(addr) Address of symbols
      *
      *  @a(Returns)  Array of symbols at the requested address.
      */
@@ -343,7 +398,7 @@
      *  memory) and use lookupDataSymbol to get data symbols (for symbols in
      *  DATA memory).
      *
-     *  @param(addr)  Address of symbols
+     *  @param(addr) Address of symbols
      *
      *  @a(Returns)  Array of symbols at the requested address.
      */
@@ -355,9 +410,9 @@
      *
      *  Returns -1 if the symbol does not exist.
      *
-     *  @param(symName)  Name of symbol
+     *  @param(symName) Name of symbol
      * 
-     *  @a(Returns)  Address or value of symbol, or -1 if symbol does not exist
+     *  @a(Returns) Address or value of symbol, or -1 if symbol does not exist
      */
     Int getSymbolValue(String symName);
     
diff --git a/src/packages/xdc/rov/ViewInfo.xdc b/src/packages/xdc/rov/ViewInfo.xdc
index c06b84d..b709093 100644
--- a/src/packages/xdc/rov/ViewInfo.xdc
+++ b/src/packages/xdc/rov/ViewInfo.xdc
@@ -33,8 +33,9 @@
      *      - INSTANCE_DATA
      *          instance-specific data tables (many rows per instance).  The
      *          view init function is passed two arguments:(1) an instance of
-     *          the xdc.rov.Program.InstDataView structure, and (2) an instance
-     *          state structure for the instance to view.
+     *          the {@link xdc.rov.Program#InstDataView Program.InstDataView}
+     *          structure, and (2) an instance state structure for the
+     *          instance to view.
      *
      *      - MODULE
      *          basic module information (one row per module).  The view
@@ -45,20 +46,30 @@
      *      - MODULE_DATA
      *          module-specific data tables (many rows per module).  The
      *          view init function is passed one argument: a
-     *          Program.ModDataView structure.
+     *          {@link xdc.rov.Program#ModDataView Program.ModDataView}
+     *          structure.
      *
      *      - RAW
      *         This is a reserved view type used by ROV to display raw data.
      *
      *      - TREE_TABLE
      *         The view init function is passed no arguments and is expected
-     *         to return a new initialized xdc.rov.Program.TreeNode structure
-     *         or `null` in the event that there is nothing to display.
+     *         to return a new initialized
+     *         {@link xdc.rov.Program#TreeNode xdc.rov.Program.TreeNode}
+     *         array or `null` in the event that there is nothing to
+     *         display.
+     *
+     *         This view type is used to describe the `Diags` masks
+     *         for all modules, for example; see
+     *         {@link xdc.runtime.Diags#rovViewInfo Diags.rovViewInfo}'
      *
      *      - TREE
      *         The view init function is passed no arguments and is expected
-     *         to return a new initialized JavaScript hash table or `null`
-     *         in the event that there is nothing to display.
+     *         to return a new initialized JavaScript hash table of hash
+     *         tables or `null` in the event that there is nothing to display.
+     *
+     *         This view type provides a simple two-level tree of name-value
+     *         pairs.
      *  @p
      */
     metaonly enum ViewType {
@@ -103,7 +114,7 @@
 
     /*!
      *  ======== showRawTab ========
-     *  Control whether the "raw view" is available
+     *  Control whether or not the "raw view" is available
      */
     metaonly config Bool showRawTab = true;
 
diff --git a/src/packages/xdc/services/spec/Unit.java b/src/packages/xdc/services/spec/Unit.java
index 20394ea..09a454a 100644
--- a/src/packages/xdc/services/spec/Unit.java
+++ b/src/packages/xdc/services/spec/Unit.java
@@ -888,6 +888,7 @@
                     "@TargetHeader must be used in metaonly units");
             }
         }
+
         if (this.creator != null) {
             this.decls.remove(this.creator);
         }
@@ -897,7 +898,6 @@
 
         this.iobjFlag |= this.isMeta();
         this.sizeFlag &= !this.proxy;
-
     }
 
     /**