`A12-1-1`: Does not apply transitively
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 35/100
Hướng nghiên cứu
Bắt đầu bằng cách tìm phần triển khai của quy tắc A12-1-1, cpp/autosar/explicit-constructor-base-class-initialization, và so sánh hành vi của nó với ví dụ có hai hàm khởi tạo trong issue. Xác định xem quy tắc có nên chấp nhận lời gọi hàm khởi tạo bắc cầu hay không, sau đó kiểm tra kết quả mong đợi bằng các bài kiểm thử hiện có của quy tắc hoặc thêm một trường hợp tập trung nếu tìm thấy vị trí của các bài kiểm thử.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Affected rules
A12-1-1:cpp/autosar/explicit-constructor-base-class-initialization
Rule A12-1-1 (required, implementation, automated)
Constructors shall explicitly initialize all virtual base classes, all direct
non-virtual base classes and all non-static data members.
Description
⚠️ I'm not 100% sure if the rule actually allows transitive calls to constructors ⚠️
Let an inherited class having two constructor a and b.
a calls the base class constructor while b calls a.
A12-1-1 gets reported on b because it does not call base class constructor directly (but it calls it transitively through a)
Example
class BaseClass {
public:
BaseClass() noexcept = default;
};
class Class final : public BaseClass {
public:
Class(void) noexcept : BaseClass() {};
Class(bool) noexcept : Class() {}; // Triggers `A12-1-1`
};
- Ngôn ngữ chính
- CodeQL
- Star
- 227
- Fork
- 82
- Merge trung bình
- 6 ngày 7 giờ
- Pull request đã merge (30 ngày)
- 9
Hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của github/codeql-coding-standards
-
false positive/false negative Stardard-MISRA-C++
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
github/codeql-coding-standards#1172 ·
-
Difficulty-Low false positive/false negative false-negative Impact-Low Standard-MISRA-C
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
-
Difficulty-Medium false positive/false negative false-positive Impact-Medium Standard-CERT-C
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 48/100
github/codeql-coding-standards#1200 ·
-
`RULE-0-0-1`: "unreachable statement" false positives due to over-pruning of the control-flow graph Đang mởfalse positive/false negative
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 48/100
github/codeql-coding-standards#1190 ·
-
false positive/false negative
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 65/100
github/codeql-coding-standards#1175 ·
Tất cả issue của github/codeql-coding-standards
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 92/100
-
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 86/100
DavidAnson/markdownlint-cli2#940 ·
-
Claiming namespace Londopy Đang mở
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 72/100
EclipseFdn/open-vsx.org#13385 · 1 bình luận ·
-
bug ci good first issue
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 88/100