* lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
Rule 'gradle-kotlin': don't be more forgiving than necessary; we know
exactly what the output looks like (see
https://github.com/JetBrains/kotlin/commit/\
ffe8ae3840d7b9bdc82170c8181031f05ced68bd) and there is no reason to
risk mismatches or expensive backtracking (bug#18109). Recognise
'info' level messages. Convert to rx.
;; GradleStyleMessagerRenderer.kt in kotlin sources, see
;; https://youtrack.jetbrains.com/issue/KT-34683).
(gradle-kotlin
- ,(concat
- "^\\(?:\\(w\\)\\|.\\): *" ;type
- "\\(\\(?:[A-Za-z]:\\)?[^:\n]+\\): *" ;file
- "(\\([0-9]+\\), *\\([0-9]+\\))") ;line, column
- 2 3 4 (1))
+ ,(rx bol
+ (| (group "w") ; 1: warning
+ (group (in "iv")) ; 2: info
+ "e") ; error
+ ": "
+ (group ; 3: file
+ (? (in "A-Za-z") ":")
+ (+ (not (in "\n:"))))
+ ": ("
+ (group (+ digit)) ; 4: line
+ ", "
+ (group (+ digit)) ; 5: column
+ "): ")
+ 3 4 5 (1 . 2))
(iar
"^\"\\(.*\\)\",\\([0-9]+\\)\\s-+\\(?:Error\\|Warnin\\(g\\)\\)\\[[0-9]+\\]:"