private PreOccurence createPreOccurence(
      AnalysisConfig config,
      IChecker checker,
      IASTFileLocation fileLocation,
      String msg,
      String declaratorName) {
    final int startLine = fileLocation.getStartingLineNumber();
    final int endLine = fileLocation.getEndingLineNumber();
    final int startOffset = fileLocation.getNodeOffset();
    final int endOffset = startOffset + fileLocation.getNodeLength();

    Map<String, String> tempmap = CppUtil.extractModuleName(translationUnit, startLine);
    String className = tempmap.get("className");
    String methodName = tempmap.get("methodName");

    PreOccurence preOcc = new PreOccurence();
    preOcc.setCheckerCode(checker.getCode());
    preOcc.setFileName(config.getFileName());
    preOcc.setModulePath(config.getModulePath());
    preOcc.setClassName(className);
    preOcc.setMethodName(methodName);
    preOcc.setLanguage(config.getLanguageEnum().toString());
    preOcc.setSeverityCode(checker.getSeverityCode());
    preOcc.setMessage(checker.getDescription());
    preOcc.setToolName(DexterVdCppPlugin.PLUGIN_NAME);
    preOcc.setStartLine(startLine);
    preOcc.setEndLine(endLine);
    preOcc.setCharStart(startOffset);
    preOcc.setCharEnd(endOffset);
    preOcc.setVariableName(declaratorName);
    preOcc.setStringValue(msg);
    preOcc.setMessage(msg);

    return preOcc;
  }