@Override
	protected boolean createMarkup() throws CancelledException, InvalidInputException {

		monitor.checkCancelled();

		Program program = model.getProgram();
		String demangledName = model.getDemangledTypeDescriptor();
		if (demangledName == null) {
			return false;
		}
		String prefix = demangledName + " ";

		// Plate Comment
		EHDataTypeUtilities.createPlateCommentIfNeeded(program, prefix, RTTI_0_NAME, null,
			getDataAddress(), applyOptions);

		monitor.checkCancelled();

		// Label
		Namespace classNamespace = model.getDescriptorAsNamespace();

		if (classNamespace == null) {
			Msg.error(RttiUtil.class, "Cannot get namespace from model " + model.getAddress());
			return false;
		}

		// If PDB had been run, then the namespace here might already have been promoted to
		//  a class type.  At this point in processing, we know that the model only has a type
		//  with a "class" or "struct" tag (see TypeDescriptorModel).
		// <br>Note: For now this assumes all classes and structs with RTTI data must
		// actually be classes. In the future this might need additional checking before
		// promoting some "struct" ref types to being a class, if we can better determine
		// whether or not they are actually classes.
		if (!(classNamespace instanceof GhidraClass)) {
			classNamespace = RttiUtil.promoteToClassNamespace(program, classNamespace);
		}

		// Make the symbol even if the namespace couldn't be promoted
		// the method to promote spits out debug error if it cannot be promoted
		EHDataTypeUtilities.createSymbolIfNeeded(program, classNamespace, RTTI_0_NAME,
			getDataAddress(), applyOptions);

		return true;
	}
Create the data corresponding to a RTTI0 TypeDescriptor structure which contains a flexible-array
as its last component ( char[0]  name ).  The string data associated with this flexible char array will
be applied as a sized character array immediately following the structure whose size does not include
the char array bytes.
@return false if the data type was not created because it already exists, true otherwise
@throws CodeUnitInsertionException if creating data throws exception
@throws CancelledException if cancelled
Ghidra/Features/MicrosoftCodeAnalyzer/src/main/java/ghidra/app/cmd/data/CreateTypeDescriptorBackgroundCmd.java