Issue 176771
Summary clang-format Java import sorting fails to ignore 'import' in comments, text blocks
Labels clang-format
Assignees
Reporter marktsuchida
    Java source files can contain apparent `import` statements inside block comments (e.g., showing a code example) or Java 15 text blocks (e.g., in codegen code). These can get mixed up with real `import` statements when run through clang-format.

Here are 2 potential test cases and the broken output from current clang-format (trunk):

---

`blockcomment.java`:

```java
/* import org.d;
import org.c;
import org.b; */
import org.a;
```

`clang-format --style=LLVM blockcomment.java`:

```java
/* import org.d;
import org.a;
import org.b; */
import org.c;
```

---

`textblock.java`:

```java
String code = """
 import org.c;
    \"""
    import org.b;
\\""";
import org.a;
```

`clang-format --style=LLVM textblock.java`:

```java
String code = """
\\""";
import org.a;
    \"""
    import org.b;
 import org.c;
```
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to