code: func TransactionNoticeError(id int64, exceptionType, errorMessage, stackTrace, stackFrameDelim string) (int, error) {
  	cexceptionType := C.CString(exceptionType)
  	defer C.free(unsafe.Pointer(cexceptionType))
  
  	cerrorMessage := C.CString(errorMessage)
  	defer C.free(unsafe.Pointer(cerrorMessage))
  
  	cstackTrace := C.CString(stackTrace)
  	defer C.free(unsafe.Pointer(cstackTrace))
  
  	cstackFrameDelim := C.CString(stackFrameDelim)
  	defer C.free(unsafe.Pointer(cstackFrameDelim))
  
  	return errNo(C.newrelic_transaction_notice_error(C.long(id), cexceptionType, cerrorMessage, cstackTrace, cstackFrameDelim))
  }
docs: /*
   * Identify an error that occurred during the transaction. The first identified
   * error is sent with each transaction.
   *
   * @param transaction_id  id of transaction
   * @param exception_type  type of exception that occurred
   * @param error_message  error message
   * @param stack_trace  stacktrace when error occurred
   * @param stack_frame_delimiter  delimiter to split stack trace into frames
   * @return  0 on success, else negative warning code or error code
   */