# CppParser ```c# if (skipProcessing && false) { compilation.Diagnostics.Warning($"Compilation aborted due to one or more errors listed above.", new CppSourceLocation(rootFileName, 0, 1, 1)); } else { translationUnit.Cursor.VisitChildren(builder.VisitTranslationUnit, clientData: default); } ``` # CppModelBuilder ```c# //Debug.WriteLine($"[Warning]template argument in class:{cppClass.FullName} with type: {arg.kind} do not handle right now!"); cppClass.TemplateSpecializedArguments.Add(new CppTemplateArgument(tempParams[(int)i], arg.ToString())); //WarningUnhandled(cursor, parent); break; if (!string.IsNullOrEmpty(errorMessage)) { var element = (CppElement)attrContainer; //throw new Exception($"handle meta not right, detail: `{errorMessage}, location: `{element.Span}`"); } AppendToMetaAttributes(attrContainer.MetaAttributes.MetaList, metaAttr); // TODO: this is not yet supported //RootCompilation.Diagnostics.Warning($"Dependent sized arrays `{CXUtil.GetTypeSpelling(type)}` from `{CXUtil.GetCursorSpelling(parent)}` is not supported", GetSourceLocation(parent.Location)); var elementType = GetCppType(type.ArrayElementType.Declaration, type.ArrayElementType, parent, data); return new CppArrayType(elementType, (int)type.ArraySize); //WarningUnhandled(cursor, parent, type); return new CppUnexposedType(CXUtil.GetTypeSpelling(type)) { SizeOf = (int)type.SizeOf }; ``` # CppElement ```c# throw new NotImplementedException("Can not be here, not support type here!"); //throw new NotImplementedException("Can not be here, not support type here!"); ```