================
@@ -146,18 +146,115 @@ is a zero-based file offset, assuming ‘utf-8-unix’ 
coding."
     (lambda (byte &optional _quality _coding-system)
       (byte-to-position (1+ byte)))))
 
-;;;###autoload
-(defun clang-format-region (start end &optional style assume-file-name)
-  "Use clang-format to format the code between START and END according to 
STYLE.
-If called interactively uses the region or the current statement if there is no
-no active region. If no STYLE is given uses `clang-format-style'. Use
-ASSUME-FILE-NAME to locate a style config file, if no ASSUME-FILE-NAME is given
-uses the function `buffer-file-name'."
-  (interactive
-   (if (use-region-p)
-       (list (region-beginning) (region-end))
-     (list (point) (point))))
-
+(defun clang-format--vc-diff-match-diff-line (line)
+  ;; Matching something like:
+  ;; "@@ -80 +80 @@" or "@@ -80,2 +80,2 @@"
+  ;; Return as "<LineStart>:<LineEnd>"
+  (when (string-match 
"^@@\s-[0-9,]+\s\\+\\([0-9]+\\)\\(,\\([0-9]+\\)\\)?\s@@$" line)
+    ;; If we have multi-line diff
+    (if (match-string 3 line)
+        (concat (match-string 1 line)
+                ":"
+                (number-to-string
+                 (+ (string-to-number (match-string 1 line))
+                    (string-to-number (match-string 3 line)))))
+      (concat (match-string 1 line) ":" (match-string 1 line)))))
+
+(defun clang-format--vc-diff-get-diff-lines (file-orig file-new)
+  "Return all line regions that contain diffs between FILE-ORIG and
----------------
ideasman42 wrote:

Running `byte-compile-file` gives various warnings: 

```
clang-format.el:163:2: Warning: docstring has wrong usage of unescaped single 
quotes (use \=' or different quoting such as `...')
clang-format.el:201:19: Error: ‘add-to-list’ can’t use lexical var 
‘diff-lines’; use ‘push’ or ‘cl-pushnew’

In clang-format--vc-diff-get-vc-head-file:
clang-format.el:211:2: Warning: docstring has wrong usage of unescaped single 
quotes (use \=' or different quoting such as `...')

In clang-format--region-impl:
clang-format.el:252:2: Warning: docstring has wrong usage of unescaped single 
quotes (use \=' or different quoting such as `...')

In clang-format-vc-diff:
clang-format.el:325:2: Warning: docstring has wrong usage of unescaped single 
quotes (use \=' or different quoting such as `...')
```


https://github.com/llvm/llvm-project/pull/112792
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to