github / github/codeql

Java: `RefType.inherits(Member)` does not work for member types

Đang mở
#5,596 1 bình luận 0 reaction 0 người được giao Xem trên GitHub
Java question
Ngôn ngữ chính
CodeQL
Star
10.1k
Fork
2.1k
Merge trung bình
2 ngày 15 giờ
Pull request đã merge (30 ngày)
141

Mô tả

The predicate [`RefType.inherits(Member)`](https://codeql.github.com/codeql-standard-libraries/java/semmle/code/java/Type.qll/predicate.Type$RefType$inherits.1.html) does not work for member types (member classes or member interfaces), see also #5591.
If this is the intended behavior, it should at least be documented.

Currently the compiler does not even permit using a `NestedType` as argument for `inherits`.

Edit: However, based on [JLS 16 §8.2](https://docs.oracle.com/javase/specs/jls/se16/html/jls-8.html#jls-8.2) member types are "inherited", so it might be good if CodeQL reflected this.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.