PVS-Studio 7.41: MISRA C 2023, 향상된 Unreal Engine 통합, 새로운 로깅 시스템, 등등

발행: (2026년 2월 25일 오후 09:18 GMT+9)
6 분 소요
원문: Dev.to

Source: Dev.to

PVS‑Studio 7.41이 출시되었으며, Unreal Engine, MISRA C 2023 지원, IntelliJ IDEA 플러그인 등 다양한 개선 사항을 제공합니다.

MISRA C 2023 지원

  • 분석기가 이제 MISRA C 2023 표준의 **86 %**를 다룹니다.
  • 향후 릴리스에서는 MISRA C++ 2023 커버리지를 추가로 확대할 예정입니다.
  • 자세한 내용은 공식 MISRA C 2023 페이지에서 확인할 수 있습니다.

Unreal Engine 통합

  • Unreal Engine 프로젝트에 대한 진단 기능이 강화되었습니다.
  • 엔진 컨테이너와 작업할 때 발생하던 V557 규칙 문제를 수정했습니다.
  • 가상 함수에서 final 지정자를 파싱하던 문제를 해결했습니다.
  • Unreal Engine과 함께 PVS‑Studio를 사용하는 방법은 문서를 참고하십시오.

C# 분석기 향상

  • 오염 분석이 이제 JSON 사용자 주석을 지원하여 비동기 함수, 표준 라이브러리 클래스의 비동기 메서드까지 분석합니다.
  • 사용자 주석 메커니즘( PVS‑Studio 7.33에서 도입)은 JSON 파일을 통해 추가 컨텍스트를 제공할 수 있습니다.
  • 설정 및 사용 방법에 대한 안내는 문서를 확인하십시오.

새로운 유틸리티: pvs-fp-cleaner

  • 배포판에 포함된 새로운 도구가 중복된 false‑alarm 마커(진단을 억제하는 주석)를 자동으로 제거합니다.
  • 이를 통해 전체 코드베이스를 수동으로 검토할 필요가 없어집니다.
  • 사용 방법은 문서를 참고하십시오.

새로운 로깅 시스템

  • 분석 중 발생한 문제에 대한 정보를 수집하는 로깅 시스템을 도입하여 기술 지원을 간소화했습니다.
  • 첫 단계에서는 C 및 C++ 크로스‑플랫폼 분석기에 대한 확장 로깅을 추가했습니다.
  • 향후 릴리스에서는 MSBuild 기반 C++ 및 C# 분석기로 로깅을 확장할 예정입니다.
  • 자세한 내용은 문서에 포함되어 있습니다.

IDE 플러그인 업데이트

  • IntelliJ IDEA 플러그인이 이제 분석기 보고서를 CSV로 내보내고 상대 경로를 표시할 수 있습니다.
  • 문서를 열 때 발생하던 속도 저하 문제를 수정했습니다.
  • 플러그인에 대한 추가 정보는 문서에서 확인할 수 있습니다.

호환성 및 진단 변경 사항

이러한 변경 사항은 이전 분석기 버전과 호환되지 않으며 조정이 필요할 수 있습니다.

  • 분석기 출력이 이제 모든 플랫폼에서 일관된 CSV 형식을 따릅니다.
  • CSV 변환기로 생성된 보고서가 업데이트되었습니다.
  • 진단 규칙 V2609의 메시지가 변경되었습니다; 이전에 억제되었던 경고가 다시 나타날 수 있습니다.

업데이트된 MISRA 관련 진단

  • V2667 – 표현식의 값과 그 지속적인 부작용은 모든 허용된 평가 순서와 스레드 인터리빙에 관계없이 동일해야 합니다.
  • V2668 – 매크로 매개변수 뒤에 바로 #가 오면 바로 뒤에 ##가 와서는 안 됩니다.
  • V2669 – 전처리 지시문처럼 보이는 토큰은 매크로 인수 내부에 나타나서는 안 됩니다.
  • V2670 – 스레드 객체, 동기화 객체 및 스레드‑특정 저장소 포인터는 적절한 표준 라이브러리 함수를 통해서만 접근해야 합니다.
  • V2671localeconv, getenv, setlocale, strerror가 반환하는 포인터는 const‑자격 데이터로 취급해야 합니다.
  • V2672 – 포인터 간 뺄셈은 동일 배열의 요소를 가리키는 포인터에만 적용되어야 합니다.

기타 진단 업데이트

  • V3230typeof(Nullable)와의 비교는 의미가 없으며, nullable 변수에 GetType()을 호출해도 Nullable을 반환하지 않습니다.
  • V5339 – OWASP: 잠재적인 RCE 취약점 – 오염된 데이터를 처리하기 위해 사용된 불안전한 GraalVM 컨텍스트.
  • V5340 – OWASP: 코드에 보이지 않는 문자가 포함되어 있어 로직을 변경할 수 있습니다; 편집기에서 보이지 않는 문자를 표시하도록 설정하는 것을 고려하십시오.
0 조회
Back to Blog

관련 글

더 보기 »

AI 기반 클래스 제안으로 상표 생성 혁신

개요: 맞춤형 대형 언어 모델(LLM)을 수백만 건의 USPTO 상표 기록이 포함된 방대한 데이터베이스에 파인튜닝함으로써, 우리는 우리가 믿는 바에 따라 개발했습니다 i...