Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Bug: cl-assert Error Related to EIEIO

Đang mở
#4 4 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
3/5
Thời gian dự kiến
1-2 ngày
Mức phù hợp với người mới
35/100
Loại issue
Lỗi
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Đình trệ
Công nghệ
emacs-lisp, php
Lĩnh vực
tooling

Hướng nghiên cứu

Tái hiện lỗi bằng cách biên dịch php-runtime.el thành bytecode và bắt đầu từ php-runtime-run, nơi lệnh gọi được báo cáo tới eieio--defalias kích hoạt cl-assert. Đọc các định nghĩa EIEIO xung quanh và stack trace để xác định tại sao phần thân của alias lại là một symbol. Hoàn tất khi php-runtime.el biên dịch và tải được mà không có assertion này.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

bug

When I try to compile the package I get this error:

Debugger entered--Lisp error: (cl-assertion-failed ((not (symbolp body)) nil))
  cl--assertion-failed((not (symbolp body)))
  eieio--defalias(php-runtime-run nil)
  byte-code("\300\301\302\301\303\"\"\210\304\301\303\305\306$\210\300\307\302\307\303\"\"\210\304\307\303\305\310$\210\300\311\302\311\303\"\"\210\304\311\303\305\312$\210\300\313\302\313\303\"\"\210\304\313\303\305\314$\210\300\315\302\315\303\"\"\210\304\315\303\305\316$\210\300\317\302\317\303\"\"\210\304\317\303\305\320$\210\300\321\302\321\303\"\"\210\304\321\303\305\322$\207" [eieio--defalias php-runtime-run eieio--defgeneric-init-form nil eieio--defmethod php-runtime-execute #f(compiled-function (php) "Execute PHP process using `php -r' with code.\n\nThis execution method is affected by the number of character limit of OS command arguments.\nYou can check the limitation by command, for example (shell-command-to-string \"getconf ARG_MAX\") ." #<bytecode>) php-runtime--call-php-process #f(compiled-function (php args) "Execute PHP Process by php-execute `PHP' and `ARGS'." #<bytecode>) php-runtime--call-php-process-with-input-buffer #f(compiled-function (php args) "Execute PHP Process with STDIN by php-execute `PHP' and `ARGS'." #<bytecode>) php-runtime--get-command-line-arg #f(compiled-function (php) "Return command line string" #<bytecode>) php-runtime--stdin-by-file-p #f(compiled-function (php) "Return T if (oref php stdin) is file." #<bytecode>) php-runtime--get-input #f(compiled-function (php) #<bytecode>) php-runtime-stdout-buffer #f(compiled-function (php) "Return output buffer." #<bytecode>)] 5)
  #<subr load>("/home/eric/.emacs.d/local/php-runtime.el/php-runtime.elc")
  apply(#<subr load> "/home/eric/.emacs.d/local/php-runtime.el/php-runtime.elc")
  load("/home/eric/.emacs.d/local/php-runtime.el/php-runtime.elc")
  byte-recompile-file("/home/eric/.emacs.d/local/php-runtime.el/php-runtime.el" nil 0 t)
  emacs-lisp-byte-compile-and-load()
  funcall-interactively(emacs-lisp-byte-compile-and-load)
  call-interactively(emacs-lisp-byte-compile-and-load nil nil)
  command-execute(emacs-lisp-byte-compile-and-load)

The problem is a call to cl-assert inside of eieio--defalias which is invoked by php-runtime-run. I am trying to figure out the fix for this but I have very, very small experience using EIEIO, so there may be an obvious solution which I simply am not seeing.

I am using GNU Emacs 26.0.50 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.18.9) of 2017-07-24.

Ngôn ngữ chính
Emacs Lisp
Star
8
Fork
2
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của emacs-php/php-runtime.el

Tất cả issue của emacs-php/php-runtime.el

Issue tương tự

Thêm issue về DevTools

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.