private String[] buildZeroLengthComponentAutoComment(DataTypeComponent lastZeroLengthComponent,
			Data data, int levelsToIgnore, String label) {

		String fieldName = lastZeroLengthComponent.getFieldName();
		if (StringUtils.isEmpty(fieldName)) {
			fieldName = lastZeroLengthComponent.getDefaultFieldName();
		}

		StringBuilder flexName = new StringBuilder(fieldName);

		int[] cpath = data.getComponentPath();
		int cpathIndex = cpath != null ? cpath.length - 1 : -1;

		while (cpathIndex >= levelsToIgnore) {
			Data parent = data.getParent();
			Data component = parent.getComponent(cpath[cpathIndex--]);
			flexName.insert(0, component.getFieldName() + ".");
			data = component;
		}

		if (label != null) {
			flexName.insert(0, label + ".");
		}

		return new String[] { "Zero-length Component: " +
			lastZeroLengthComponent.getDataType().getName() + " " + flexName.toString() };
	}
A composite which immediately precedes the current address may contain trailing zero-length 
components which implicitly refer to this address and are not rendered by the opened composite.
This comment is intended to convey the existence of such hidden components which correspond
to addr.
<br>
NOTE: Implementation only provides comment for one trailing zero-length component.  This could
be improved to return a comment for all applicable trailing zero-length components. 
@param data data location whose pre-comment is currently be generated
@return auto-comment or null
Ghidra/Features/Base/src/main/java/ghidra/app/util/viewer/field/PreCommentFieldFactory.java