IWYU 0.21

IWYU (hoặc include-what-you-use) đã được phát hành, một chương trình cho phép bạn tìm những phần thừa và đề xuất #include bị thiếu trong mã C/C++ của bạn.

"Bao gồm những gì bạn sử dụng" có nghĩa là đối với mọi ký hiệu (loại, biến, hàm hoặc macro) được sử dụng trong foo.cc, thì foo.cc hoặc foo.h đều phải bao gồm tệp .h xuất phần khai báo của ký hiệu đó. Công cụ bao gồm những gì bạn sử dụng là một chương trình phân tích các tệp nguồn #include để tìm ra các vi phạm đối với phương pháp này và đưa ra đề xuất khắc phục. Chương trình sử dụng thư viện Clang và thường bản phát hành có nghĩa là khả năng tương thích với phiên bản Clang mới.

Mục đích chính của include-what-you-use là loại bỏ những #include không cần thiết. Để thực hiện việc này, bạn cần tìm ra #include nào không cần thiết trong một tệp nhất định (cho cả .cc và .h) và, nếu có thể, hãy thay thế #include bằng một khai báo trước.

Sự thay đổi chính

  • Tương thích với Clang 17.
  • Cải thiện phân tích bí danh loại (typedef và sử dụng).
  • Cải thiện phân tích bí danh vùng tên (không gian tên xyz = foobar).
  • Cải thiện hỗ trợ cho các khai báo chuyển tiếp mở rộng (typedef struct Foo Bar;).
  • Cải thiện khả năng xử lý các kiểu trả về "autocast" và hàm, đặc biệt khi làm việc với các kiểu mẫu phức tạp.
  • Đã thêm một pragma IWYU mới: Always_keep để đánh dấu tiêu đề mà nó phải luôn được giữ ở bất cứ nơi nào có nó.
  • Tự động sử dụng ánh xạ cho nội trang libc++ nếu libc++ là thư viện chuẩn đang hoạt động.
  • Ánh xạ được cải thiện cho tiêu đề libc++ và posix.

Nguồn: linux.org.ru

Thêm một lời nhận xét