                           (4 'factor-font-lock-invalid-syntax nil t))
     (,factor-declaration-words-regex . 'factor-font-lock-comment)
     (,factor-word-definition-regex 2 'factor-font-lock-word)
-    (,factor-alias-definition-regex (1 'factor-font-lock-word)
-                                    (2 'factor-font-lock-word))
+    (,factor-alias-regex (1 'factor-font-lock-parsing-word)
+                         (2 'factor-font-lock-word)
+                         (3 'factor-font-lock-word))
     (,factor-int-constant-def-regex 2 'factor-font-lock-constant)
     (,factor-integer-regex . 'factor-font-lock-number)
     (,factor-float-regex . 'factor-font-lock-number)

          "M[^:]*: [^ ]+ [^ ]+"))

(defconst factor-constructor-decl-regex
  (concat (syntax-begin '("C")) ws+ symbol ws+ symbol))

(defconst factor-typedef-regex
  (concat (syntax-begin '("TYPEDEF" "INSTANCE")) ws+ symbol ws+ symbol))

(defconst factor-c-global-regex
  (format "\\_<C-GLOBAL: +%s +%s\\( .*\\)?$" symbol symbol))

;; Excludes parsing words that are handled by other regexps
(defconst factor-parsing-words
  '(":" "::" ";" ":>" "&:" "<<" "<PRIVATE" ">>"
    "ABOUT:" "AFTER:" "ALIEN:" "ARTICLE:"
    "B" "BEFORE:"
    "C-GLOBAL:" "C-TYPE:" "CHAR:" "COLOR:" "COM-INTERFACE:"
    "CONSULT:" "call-next-method"
