8181(eval-when-compile
8282 (require 'rx )
8383 (require 'cl-lib )
84+ (require 'flymake )
8485 (require 'regexp-opt )
8586 (defvar add-log-current-defun-header-regexp )
8687 (defvar add-log-current-defun-function )
@@ -301,6 +302,7 @@ In that case set to `NIL'."
301302 :group 'php-mode
302303 :tag " PHP Mode Disable C Mode Hook"
303304 :type 'boolean )
305+ (make-obsolete-variable 'php-mode-disable-c-mode-hook nil " 1.24.2" )
304306
305307(defcustom php-mode-enable-project-local-variable t
306308 " When set to `T' , apply project local variable to buffer local variable."
@@ -1147,6 +1149,12 @@ After setting the stylevars run hooks according to STYLENAME
11471149 (php-project-apply-local-variables)
11481150 (remove-hook 'hack-local-variables-hook #'php-mode-set-local-variable-delay ))
11491151
1152+ (defun php-mode-neutralize-cc-mode-effect ()
1153+ " Reset PHP-irrelevant variables set by Cc Mode initialization."
1154+ (setq-local c-mode-hook nil )
1155+ (setq-local java-mode-hook nil )
1156+ t )
1157+
11501158(defvar php-mode-syntax-table
11511159 (let ((table (make-syntax-table )))
11521160 (c-populate-syntax-table table)
@@ -1173,9 +1181,12 @@ After setting the stylevars run hooks according to STYLENAME
11731181 " Please run `M-x package-reinstall php-mode' command."
11741182 " Please byte recompile PHP Mode files." )))
11751183
1176- (when php-mode-disable-c-mode-hook
1177- (setq-local c-mode-hook nil )
1178- (setq-local java-mode-hook nil ))
1184+ (if php-mode-disable-c-mode-hook
1185+ (php-mode-neutralize-cc-mode-effect)
1186+ (display-warning 'php-mode
1187+ " `php-mode-disable-c-mode-hook' will be removed. Do not depends on this variable."
1188+ :warning ))
1189+
11791190 (c-initialize-cc-mode t )
11801191 (c-init-language-vars php-mode)
11811192 (c-common-init 'php-mode )
0 commit comments