{"id":399963,"date":"2024-06-29T14:58:50","date_gmt":"2024-06-29T14:58:50","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=399963"},"modified":"-0001-11-30T00:00:00","modified_gmt":"2024-06-29T14:58:50","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=399963","title":{"rendered":"<span>PVS-Studio 7.17: Unreal Engine, ASP.NET Core, Texas Instruments<\/span>"},"content":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-1\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/post_images\/17e\/e75\/f75\/17ee75f75e357466f363378393689dd9.png\" alt=\"0919_Release_7_17\/image1.png\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/17e\/e75\/f75\/17ee75f75e357466f363378393689dd9.png\"\/><\/p>\n<p>  <\/p>\n<p>We are pleased to announce the first release of PVS-Studio in 2022. In this article, we discuss various enhancements in managing Unreal Engine and ASP.NET Core projects. Keep reading to learn about new diagnostics and latest articles by PVS-Studio.<\/p>\n<p><a name=\"habracut\"><\/a>  <\/p>\n<h2 id=\"various-enhancements\">Various enhancements<\/h2>\n<p>  <\/p>\n<p><strong>Managing suppression files for Unreal Engine projects from IDE<\/strong><\/p>\n<p>  <\/p>\n<p>We continue to enhance scenarios for working with Unreal Engine projects. Now you can manage suppression files with PVS-Studio plugins for Visual Studio and JetBrains Rider. This makes baselining more convenient when you are just <a href=\"https:\/\/pvs-studio.com\/en\/blog\/posts\/0743\/\">integrating the analyzer<\/a> in your development process. Also, you can easily suppress\/unsuppress the warnings after introducing the analyzer in your regular work.<\/p>\n<p>  <\/p>\n<p>You can read more about this in the <a href=\"https:\/\/pvs-studio.com\/en\/docs\/manual\/0043\/#ID802C9016D6\">documentation<\/a>. <\/p>\n<p>  <\/p>\n<p><strong>Improving the analysis of ASP.NET Core projects<\/strong><\/p>\n<p>  <\/p>\n<p>Now, the C# analyzer contains new annotations for the most common classes in ASP.NET Core libraries. Thus, PVS-Studio better understands what is happening in the code written with ASP.NET Core. As a result \u2014 the analyzer detects more errors and issues fewer <a href=\"https:\/\/pvs-studio.com\/en\/blog\/terms\/6461\/\">false positives<\/a>.<\/p>\n<p>  <\/p>\n<p><strong>Supporting the C6000-CGT compiler by Texas Instruments<\/strong><\/p>\n<p>  <\/p>\n<p>The PVS-Studio analyzer for C and C++ now can check projects for C6000-CGT \u2014 the compiler for embedded systems developed by Texas Instruments. By the way, you can find the full list of platforms and compilers supported by PVS-Studio <a href=\"https:\/\/pvs-studio.com\/en\/pvs-studio#languages_and_compilers\">here<\/a>.<\/p>\n<p>  <\/p>\n<p><strong>Changing the hash algorithms for suppression files in JSON format<\/strong><\/p>\n<p>  <\/p>\n<p>Perhaps, the heading makes you wonder why we did this. \ud83d\ude42 Let me explain. Changing the hash algorithms will make JSON suppress files fully cross-platform for all use-case scenarios of PVS-Studio in future releases.<\/p>\n<p>  <\/p>\n<p>We changed the algorithm in the LLVM Compilation Database analysis and tracing tool (pvs-studio-analyzer), and in the log conversion tool (plog-converter). The support of old-format suppress files still remains as backward compatibility. If you need to append warnings to your suppress files, you should re-generate the suppress files in a new format. <\/p>\n<p>  <\/p>\n<h2 id=\"new-diagnostics\">New diagnostics<\/h2>\n<p>  <\/p>\n<h2>C, C++<\/h2>\n<p>  <\/p>\n<ul>\n<li><a href=\"https:\/\/pvs-studio.com\/en\/docs\/warnings\/v1077\/\">V1077<\/a>. Constructor contains potentially uninitialized members.<\/li>\n<li><a href=\"https:\/\/pvs-studio.com\/en\/docs\/warnings\/v1078\/\">V1078<\/a>. An empty container is iterated. The loop will not be executed.<\/li>\n<li><a href=\"https:\/\/pvs-studio.com\/en\/docs\/warnings\/v2017\/\">V2017<\/a>. String literal is identical to variable name. It is possible that the variable should be used instead of the string literal.<\/li>\n<\/ul>\n<p>  <\/p>\n<h2>C#<\/h2>\n<p>  <\/p>\n<ul>\n<li><a href=\"https:\/\/pvs-studio.com\/en\/docs\/warnings\/v3174\/\">V3174<\/a>. Suspicious subexpression in a sequence of similar comparisons.<\/li>\n<li><a href=\"https:\/\/pvs-studio.com\/en\/docs\/warnings\/v5617\/\">V5617<\/a>. OWASP. Assigning potentially negative or large value as timeout of HTTP session can lead to excessive session expiration time.<\/li>\n<li><a href=\"https:\/\/pvs-studio.com\/en\/docs\/warnings\/v5618\/\">V5618<\/a>. OWASP. Possible server-side request forgery. Potentially tainted data is used in the URL.<\/li>\n<\/ul>\n<p>  <\/p>\n<h2 id=\"more-from-pvs-studio\">More from PVS-Studio<\/h2>\n<p>  <\/p>\n<p>Here&#8217;s how we summed up 2021:<\/p>\n<p>  <\/p>\n<ul>\n<li><a href=\"https:\/\/pvs-studio.com\/en\/blog\/posts\/cpp\/0905\/\">What&#8217;s new in PVS-Studio in 2021?<\/a><\/li>\n<li><a href=\"https:\/\/pvs-studio.com\/en\/blog\/posts\/cpp\/0901\/\">Top 10 bugs found in C++ projects in 2021<\/a><\/li>\n<li><a href=\"https:\/\/pvs-studio.com\/en\/blog\/posts\/csharp\/0904\/\">Top 10 bugs found in C# projects in 2021<\/a><\/li>\n<\/ul>\n<p>  <\/p>\n<p>Also, we made the lists of useful resources for C++ and C# developers:<\/p>\n<p>  <\/p>\n<ul>\n<li><a href=\"https:\/\/pvs-studio.com\/en\/blog\/posts\/cpp\/0906\/\">The most interesting blogs and websites for C++ developers<\/a><\/li>\n<li><a href=\"https:\/\/pvs-studio.com\/en\/blog\/posts\/csharp\/0907\/\">The most interesting C# \/ .NET blogs and websites<\/a><\/li>\n<\/ul>\n<p>  <\/p>\n<p>Of course, we continue to check projects. Take a look at our recent articles about <a href=\"https:\/\/pvs-studio.com\/en\/blog\/posts\/csharp\/0903\/\">.NET 6<\/a> and <a href=\"https:\/\/pvs-studio.com\/en\/blog\/posts\/cpp\/0902\/\">Flipper Zero<\/a>. If you want to expand your knowledge, we invite you to read about the <a href=\"https:\/\/pvs-studio.com\/en\/blog\/posts\/cpp\/0909\/\">evolution of constexpr in C++<\/a> or <a href=\"https:\/\/pvs-studio.com\/en\/blog\/posts\/0908\/\">about static code analysis technology in PVS-Studio<\/a>.<\/p>\n<p>  <\/p>\n<p>And just one more thing \u2014 don&#8217;t forget about our <a href=\"https:\/\/www.youtube.com\/c\/PVSStudio_channel\/\">YouTube channel<\/a>. We regularly upload new videos \u2014 welcome to our channel!<\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><!----><br \/> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/651475\/\"> https:\/\/habr.com\/ru\/articles\/651475\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-1\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/post_images\/17e\/e75\/f75\/17ee75f75e357466f363378393689dd9.png\" alt=\"0919_Release_7_17\/image1.png\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/post_images\/17e\/e75\/f75\/17ee75f75e357466f363378393689dd9.png\"\/><\/p>\n<p>  <\/p>\n<p>We are pleased to announce the first release of PVS-Studio in 2022. In this article, we discuss various enhancements in managing Unreal Engine and ASP.NET Core projects. Keep reading to learn about new diagnostics and latest articles by PVS-Studio.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-399963","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/399963","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=399963"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/399963\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=399963"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=399963"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=399963"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}