{"id":101563,"date":"2021-10-07T16:22:54","date_gmt":"2021-10-07T14:22:54","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/vypusk-cppcheck-2-6-staticheskogo-analizatora-koda-dlya-yazykov-c-i-s"},"modified":"2021-10-07T16:22:54","modified_gmt":"2021-10-07T14:22:54","slug":"vypusk-cppcheck-2-6-staticheskogo-analizatora-koda-dlya-yazykov-c-i-s","status":"publish","type":"post","link":"https:\/\/prohoster.info\/es\/blog\/news\/vypusk-cppcheck-2-6-staticheskogo-analizatora-koda-dlya-yazykov-c-i-s","title":{"rendered":"Lanzamiento de cppcheck 2.6, un analizador est\u00e1tico de c\u00f3digo para los lenguajes C++ y C","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Se ha lanzado una nueva versi\u00f3n del analizador est\u00e1tico de c\u00f3digo cppcheck 2.6, que permite identificar varias clases de errores en el c\u00f3digo de los lenguajes C y C++, incluyendo el uso de sintaxis no est\u00e1ndar, t\u00edpica de sistemas embebidos. Se proporciona una colecci\u00f3n de complementos mediante los cuales se asegura la integraci\u00f3n de cppcheck con varios sistemas de desarrollo, integraci\u00f3n continua y pruebas, as\u00ed como se ofrecen funcionalidades como la verificaci\u00f3n de conformidad del c\u00f3digo con el estilo de codificaci\u00f3n. Se puede utilizar tanto un analizador propio como un analizador externo de Clang para el an\u00e1lisis del c\u00f3digo. Tambi\u00e9n incluye un script donate-cpu.py para proporcionar recursos locales para realizar trabajos de revisi\u00f3n de c\u00f3digo en paquetes Debian. Los c\u00f3digos fuente del proyecto se distribuyen bajo la licencia GPLv3.      <\/p>\n<p>El desarrollo de cppcheck se centra en identificar problemas relacionados con comportamientos indefinidos y el uso de construcciones que representan un riesgo de seguridad. Tambi\u00e9n se busca minimizar los falsos positivos. Entre los problemas identificados est\u00e1n: punteros a objetos inexistentes, divisiones por cero, desbordamientos enteros, operaciones incorrectas de desplazamiento a nivel de bits, conversiones inadecuadas, problemas al manejar la memoria, uso incorrecto de STL, desreferenciaci\u00f3n de punteros nulos, aplicaci\u00f3n de verificaciones despu\u00e9s del acceso real a un buffer, desbordamientos de buffers, y uso de variables no inicializadas.          <\/p>\n<p>  En la nueva versi\u00f3n:  <\/p>\n<ul>\n<li class=\"l\"> Se han a\u00f1adido las siguientes verificaciones al n\u00facleo del analizador:\n<ul>\n<li class=\"l\"> ausencia del operador return en el cuerpo de la funci\u00f3n;\n<li class=\"l\"> escritura de datos superpuestos, determinaci\u00f3n de comportamientos indefinidos;\n<li class=\"l\"> el valor comparado est\u00e1 fuera del rango de representaci\u00f3n del tipo;\n<li class=\"l\"> no se aplica optimizaci\u00f3n de copia para return std::move(local);\n<li class=\"l\"> el archivo no puede abrirse simult\u00e1neamente para lectura y escritura en diferentes flujos;  <\/ul>\n<li class=\"l\"> para plataformas Unix se ha a\u00f1adido soporte para la salida de mensajes de diagn\u00f3stico en diferentes colores;\n<li class=\"l\"> se ha a\u00f1adido an\u00e1lisis simb\u00f3lico para ValueFlow. Se utiliza una delta simple al calcular las diferencias entre dos variables desconocidas;\n<li class=\"l\"> Las reglas utilizadas para la lista de tokens &#171;define&#187; tambi\u00e9n pueden aplicarse a #include;\n<li class=\"l\"> La etiqueta de la biblioteca  ahora puede contener la etiqueta , y en consecuencia, las funciones free, que pueden aceptar estos contenedores como std::size, std::empty, std::begin, std::end, etc., pueden indicar yield o action para los contenedores;\n<li class=\"l\"> La etiqueta de biblioteca &lt;smart-pointer&gt; ahora puede contener la etiqueta &lt;unique&gt; para punteros inteligentes que tienen propiedad exclusiva (unique ownership). Ahora se emite una advertencia sobre las referencias &#171;colgantes&#187; a este tipo de punteros inteligentes;\n<li class=\"l\"> Se han corregido problemas con el procesamiento del par\u00e1metro &#8212;cppcheck-build-dir;\n<li class=\"l\"> htmlreport ahora puede mostrar informaci\u00f3n sobre el autor (usando git blame);\n<li class=\"l\"> Se ha ampliado la emisi\u00f3n de advertencias sobre variables que no son constantes, pero que podr\u00edan serlo;\n<li class=\"l\"> Se han corregido errores acumulados y problemas del analizador.  <\/ul>\n<p>  Adem\u00e1s, se han implementadas completamente las comprobaciones de Misra C 2012, incluyendo la Enmienda 1 y la Enmienda 2, excepto las reglas 1.1, 1.2 y 17.3. Las comprobaciones 1.1 y 1.2 deben ser realizadas por el compilador. La comprobaci\u00f3n 17.3 puede ser realizada por el compilador, por ejemplo, GCC.<br \/>\n<br \/>Fuente: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=55936\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412\u044b\u0448\u043b\u0430 \u043d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u0430 \u043a\u043e\u0434\u0430 cppcheck 2.6, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0435\u0433\u043e \u0432\u044b\u044f\u0432\u043b\u044f\u0442\u044c \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u043a\u043b\u0430\u0441\u0441\u044b \u043e\u0448\u0438\u0431\u043e\u043a \u0432 \u043a\u043e\u0434\u0435 \u043d\u0430 \u044f\u0437\u044b\u043a\u0430\u0445 \u0421\u0438 \u0438 \u0421\u0438++, \u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435 \u043f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u043d\u0435\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0433\u043e \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0430, \u0442\u0438\u043f\u0438\u0447\u043d\u043e\u0433\u043e \u0434\u043b\u044f \u0432\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c. \u041f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044f \u043f\u043b\u0430\u0433\u0438\u043d\u043e\u0432, \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0430 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u044f cppcheck \u0441 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u043c\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u043c\u0438 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u043d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u043e\u0439 \u0438\u043d\u0442\u0435\u0433\u0440\u0430\u0446\u0438\u0438 \u0438 \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u044b \u0442\u0430\u043a\u0438\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043a\u0430\u043a \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u044f [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-101563","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412\u044b\u0448\u043b\u0430 \u043d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u0430 \u043a\u043e\u0434\u0430 cppcheck 2.6, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0435\u0433\u043e \u0432\u044b\u044f\u0432\u043b\u044f\u0442\u044c \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u043a\u043b\u0430\u0441\u0441\u044b \u043e\u0448\u0438\u0431\u043e\u043a \u0432 \u043a\u043e\u0434\u0435 \u043d\u0430 \u044f\u0437\u044b\u043a\u0430\u0445 \u0421\u0438 \u0438 \u0421\u0438++, \u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435 \u043f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u043d\u0435\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0433\u043e \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0430, \u0442\u0438\u043f\u0438\u0447\u043d\u043e\u0433\u043e \u0434\u043b\u044f.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/es\/blog\/news\/vypusk-cppcheck-2-6-staticheskogo-analizatora-koda-dlya-yazykov-c-i-s\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a cppcheck 2.6, \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u0430 \u043a\u043e\u0434\u0430 \u0434\u043b\u044f \u044f\u0437\u044b\u043a\u043e\u0432 C++ \u0438 \u0421 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412\u044b\u0448\u043b\u0430 \u043d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u0430 \u043a\u043e\u0434\u0430 cppcheck 2.6, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0435\u0433\u043e \u0432\u044b\u044f\u0432\u043b\u044f\u0442\u044c \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u043a\u043b\u0430\u0441\u0441\u044b \u043e\u0448\u0438\u0431\u043e\u043a \u0432 \u043a\u043e\u0434\u0435 \u043d\u0430 \u044f\u0437\u044b\u043a\u0430\u0445 \u0421\u0438 \u0438 \u0421\u0438++, \u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435 \u043f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u043d\u0435\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0433\u043e \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0430, \u0442\u0438\u043f\u0438\u0447\u043d\u043e\u0433\u043e \u0434\u043b\u044f.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/es\/blog\/news\/vypusk-cppcheck-2-6-staticheskogo-analizatora-koda-dlya-yazykov-c-i-s\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2021-10-07T14:22:54+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2021-10-07T14:22:54+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Lanzamiento de cppcheck 2.6, analizador est\u00e1tico de c\u00f3digo para los lenguajes C++ y C | ProHoster","description":"Ha salido una nueva versi\u00f3n del analizador est\u00e1tico de c\u00f3digo cppcheck 2.6, que permite detectar diversas clases de errores en el c\u00f3digo en los lenguajes C y C++, incluso al utilizar sintaxis no est\u00e1ndar, t\u00edpica de.","canonical_url":"https:\/\/prohoster.info\/es\/blog\/news\/vypusk-cppcheck-2-6-staticheskogo-analizatora-koda-dlya-yazykov-c-i-s","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"es_ES","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a cppcheck 2.6, \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u0430 \u043a\u043e\u0434\u0430 \u0434\u043b\u044f \u044f\u0437\u044b\u043a\u043e\u0432 C++ \u0438 \u0421 | ProHoster","og:description":"\u0412\u044b\u0448\u043b\u0430 \u043d\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u0438\u0437\u0430\u0442\u043e\u0440\u0430 \u043a\u043e\u0434\u0430 cppcheck 2.6, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0435\u0433\u043e \u0432\u044b\u044f\u0432\u043b\u044f\u0442\u044c \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u043a\u043b\u0430\u0441\u0441\u044b \u043e\u0448\u0438\u0431\u043e\u043a \u0432 \u043a\u043e\u0434\u0435 \u043d\u0430 \u044f\u0437\u044b\u043a\u0430\u0445 \u0421\u0438 \u0438 \u0421\u0438++, \u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435 \u043f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u043d\u0435\u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0433\u043e \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0441\u0430, \u0442\u0438\u043f\u0438\u0447\u043d\u043e\u0433\u043e \u0434\u043b\u044f.","og:url":"https:\/\/prohoster.info\/es\/blog\/news\/vypusk-cppcheck-2-6-staticheskogo-analizatora-koda-dlya-yazykov-c-i-s","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2021-10-07T14:22:54+00:00","article:modified_time":"2021-10-07T14:22:54+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"101563","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-10-07 14:40:34","updated":"2022-09-27 16:13:52","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/101563","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=101563"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/101563\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=101563"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=101563"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=101563"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}