diff --git a/cli/cmdlineparser.cpp b/cli/cmdlineparser.cpp index 5534d0580c6..7c05ecdea9b 100644 --- a/cli/cmdlineparser.cpp +++ b/cli/cmdlineparser.cpp @@ -1145,6 +1145,7 @@ CmdLineParser::Result CmdLineParser::parseFromArgs(int argc, const char* const a "metrics", "misra-c-2012", "misra-c-2023", + "misra-c-2025", "misra-c++-2008", "misra-cpp-2008", "misra-c++-2023", diff --git a/cli/cppcheckexecutor.cpp b/cli/cppcheckexecutor.cpp index 5098636c697..c61534b0881 100644 --- a/cli/cppcheckexecutor.cpp +++ b/cli/cppcheckexecutor.cpp @@ -396,8 +396,6 @@ int CppCheckExecutor::check(int argc, const char* const argv[]) mFiles = parser.getFiles(); mFileSettings = parser.getFileSettings(); - settings.setMisraRuleTexts(executeCommand); - const int ret = check_wrapper(settings, supprs); return ret; diff --git a/gui/cppcheck_de.ts b/gui/cppcheck_de.ts index c520ff66bce..0f9d70b4f07 100644 --- a/gui/cppcheck_de.ts +++ b/gui/cppcheck_de.ts @@ -502,14 +502,14 @@ Parameter: -l(line) (file) - - - - - - - - + + + + + + + + Cppcheck Cppcheck @@ -649,14 +649,14 @@ Parameter: -l(line) (file) - + Show errors Zeige Fehler - + Show warnings Zeige Warnungen @@ -1081,7 +1081,7 @@ Parameter: -l(line) (file) - + Quick Filter: Schnellfilter: @@ -1174,23 +1174,23 @@ Analysis is aborted. - + License Lizenz - + Authors Autoren - + Save the report file Speichert die Berichtdatei - - + + XML files (*.xml) XML-Dateien (*.xml) @@ -1243,35 +1243,35 @@ Dies wurde vermutlich durch einen Wechsel der Cppcheck-Version hervorgerufen. Bi Laden von %1 fehlgeschlagen. Ihre Cppcheck-Installation ist defekt. Sie können --data-dir=<Verzeichnis> als Kommandozeilenparameter verwenden, um anzugeben, wo die Datei sich befindet. Bitte beachten Sie, dass --data-dir in Installationsroutinen genutzt werden soll, und die GUI bei dessen Nutzung nicht startet, sondern die Einstellungen konfiguriert. - + Open the report file Berichtdatei öffnen - + Text files (*.txt) Textdateien (*.txt) - + CSV files (*.csv) CSV-Dateien (*.csv) - + Project files (*.cppcheck);;All files(*.*) Projektdateien (*.cppcheck);;Alle Dateien(*.*) - + Select Project File Projektdatei auswählen - - - + + + Project: Projekt: @@ -1325,7 +1325,7 @@ Do you want to proceed analysis without using any of these project files? - + Current results will be cleared. Opening a new XML file will clear current results. @@ -1336,7 +1336,7 @@ Eine neue XML-Datei zu öffnen wird die aktuellen Ergebnisse löschen Möchten sie fortfahren? - + Analyzer is running. Do you want to stop the analysis and exit Cppcheck? @@ -1345,109 +1345,109 @@ Do you want to stop the analysis and exit Cppcheck? Wollen sie die Analyse abbrechen und Cppcheck beenden? - + About - + XML files (*.xml);;Text files (*.txt);;CSV files (*.csv) XML-Dateien (*.xml);;Textdateien (*.txt);;CSV-Dateien (*.csv) - + Cannot generate a compliance report right now, an analysis must finish successfully. Try to reanalyze the code and ensure there are no critical errors. - + Build dir '%1' does not exist, create it? Erstellungsverzeichnis '%1' existiert nicht. Erstellen? - + To check the project using addons, you need a build directory. - + Failed to open file - + Unknown project file format - + Failed to import project file - + Failed to import '%1': %2 Analysis is stopped. - + Failed to import '%1' (%2), analysis is stopped - + Show Mandatory - + Show Required - + Show Advisory - + Show Document - + Show L1 - + Show L2 - + Show L3 - + Show style - + Show portability - + Show performance - + Show information @@ -1456,22 +1456,22 @@ Analysis is stopped. Import von '%1' fehlgeschlagen; Analyse wurde abgebrochen. - + Project files (*.cppcheck) Projektdateien (*.cppcheck) - + Select Project Filename Projektnamen auswählen - + No project file loaded Keine Projektdatei geladen - + The project file %1 @@ -1488,12 +1488,12 @@ Do you want to remove the file from the recently used projects -list? Möchten Sie die Datei von der Liste der zuletzt benutzten Projekte entfernen? - + Install - + New version available: %1. %2 @@ -1632,17 +1632,17 @@ Options: MISRA C 2012 - + MISRA rule texts MISRA-Regeltexte - + <html><head/><body><p>Copy/paste the text from Appendix A &quot;Summary of guidelines&quot; from the MISRA C 2012 pdf to a text file.</p></body></html> <html><head/><body><p>Text aus Anhang A &quot;Summary of guidelines&quot; aus der MISRA-C-2012-PDF in eine Textdatei einfügen.</p></body></html> - + ... ... @@ -1812,37 +1812,42 @@ Options: Inline-Fehlerunterdrückung aktivieren - + + 2025 + + + + Misra C++ - + 2008 - + Cert C - + CERT-INT35-C: int precision (if size equals precision, you can leave empty) - + Autosar - + Bug hunting - + External tools Externe Werkzeuge @@ -1954,27 +1959,27 @@ Options: - + 2023 - + Cert C++ - + Bug hunting (Premium) - + Clang analyzer Clang-Analyzer - + Clang-tidy Clang-Tidy @@ -1987,82 +1992,82 @@ Options: ProjectFileDialog - + Project file: %1 Projektdatei: %1 - + Select Cppcheck build dir Wähle Cppcheck-Erstellungsverzeichnis - + Select include directory Wähle Include-Verzeichnisse - + Select a directory to check Wähle zu prüfendes Verzeichnis - + Note: Open source Cppcheck does not fully implement Misra C 2012 - + Clang-tidy (not found) Clang-tidy (nicht gefunden) - + Visual Studio Visual Studio - + Compile database Compilerdatenbank - + Borland C++ Builder 6 Borland C++-Builder 6 - + Import Project Projekt importieren - + Select directory to ignore Wähle zu ignorierendes Verzeichnis - + Source files - + All files - + Exclude file - + Select MISRA rule texts file Wähle MISRA-Regeltext-Datei - + MISRA rule texts file (%1) MISRA-Regeltext-Datei @@ -2095,7 +2100,7 @@ Options: - + (Not found) (nicht gefunden) diff --git a/gui/cppcheck_es.ts b/gui/cppcheck_es.ts index 6b6144ed812..82e53fad883 100644 --- a/gui/cppcheck_es.ts +++ b/gui/cppcheck_es.ts @@ -482,14 +482,14 @@ Parameters: -l(line) (file) - - - - - - - - + + + + + + + + Cppcheck Cppcheck @@ -644,7 +644,7 @@ Parameters: -l(line) (file) - + Show errors Mostrar errores @@ -1049,7 +1049,7 @@ Parameters: -l(line) (file) - + Show warnings Mostrar advertencias @@ -1150,34 +1150,34 @@ Analysis is aborted. - - + + XML files (*.xml) Archivos XML (*.xml) - + Open the report file Abrir informe - + License Licencia - + Authors Autores - + Save the report file Guardar informe - + Quick Filter: Filtro rápido: @@ -1226,30 +1226,30 @@ Do you want to load this project file instead? Error - + Text files (*.txt) Ficheros de texto (*.txt) - + CSV files (*.csv) Ficheros CVS (*.cvs) - + Project files (*.cppcheck);;All files(*.*) Ficheros de proyecto (*.cppcheck;;Todos los ficheros (*.*) - + Select Project File Selecciona el archivo de proyecto - - - + + + Project: Proyecto: @@ -1301,7 +1301,7 @@ Do you want to proceed analysis without using any of these project files? - + Current results will be cleared. Opening a new XML file will clear current results. @@ -1309,81 +1309,81 @@ Do you want to proceed? - + Analyzer is running. Do you want to stop the analysis and exit Cppcheck? - + About - + XML files (*.xml);;Text files (*.txt);;CSV files (*.csv) - + Cannot generate a compliance report right now, an analysis must finish successfully. Try to reanalyze the code and ensure there are no critical errors. - + Build dir '%1' does not exist, create it? - + To check the project using addons, you need a build directory. - + Failed to open file - + Unknown project file format - + Failed to import project file - + Failed to import '%1': %2 Analysis is stopped. - + Failed to import '%1' (%2), analysis is stopped - + Project files (*.cppcheck) - + Select Project Filename Selecciona el nombre del proyecto - + No project file loaded No hay ningún proyecto cargado - + The project file %1 @@ -1400,67 +1400,67 @@ Do you want to remove the file from the recently used projects -list? ¿Quiere eliminar el fichero de la lista de proyectos recientes? - + Install - + New version available: %1. %2 - + Show Mandatory - + Show Required - + Show Advisory - + Show Document - + Show L1 - + Show L2 - + Show L3 - + Show style - + Show portability - + Show performance - + Show information @@ -1627,22 +1627,22 @@ Options: - + 2023 - + MISRA rule texts - + <html><head/><body><p>Copy/paste the text from Appendix A &quot;Summary of guidelines&quot; from the MISRA C 2012 pdf to a text file.</p></body></html> - + ... @@ -1787,37 +1787,42 @@ Options: Habilitar supresiones inline - + + 2025 + + + + Misra C++ - + 2008 - + Cert C - + CERT-INT35-C: int precision (if size equals precision, you can leave empty) - + Autosar - + Bug hunting - + External tools @@ -1923,22 +1928,22 @@ Options: - + Cert C++ - + Bug hunting (Premium) - + Clang analyzer - + Clang-tidy @@ -1951,82 +1956,82 @@ Options: ProjectFileDialog - + Project file: %1 Archivo de proyecto: %1 - + Select Cppcheck build dir - + Select include directory Selecciona una carpeta para incluir - + Select a directory to check Selecciona la carpeta a comprobar - + Note: Open source Cppcheck does not fully implement Misra C 2012 - + Clang-tidy (not found) - + Visual Studio - + Compile database - + Borland C++ Builder 6 - + Import Project - + Select directory to ignore Selecciona la carpeta a ignorar - + Source files - + All files - + Exclude file - + Select MISRA rule texts file - + MISRA rule texts file (%1) @@ -2059,7 +2064,7 @@ Options: - + (Not found) diff --git a/gui/cppcheck_fi.ts b/gui/cppcheck_fi.ts index addeb8b1f2c..88d23522734 100644 --- a/gui/cppcheck_fi.ts +++ b/gui/cppcheck_fi.ts @@ -485,14 +485,14 @@ Parameters: -l(line) (file) - - - - - - - - + + + + + + + + Cppcheck Cppcheck @@ -636,14 +636,14 @@ Parameters: -l(line) (file) - + Show errors - + Show warnings @@ -1069,7 +1069,7 @@ Parameters: -l(line) (file) - + Quick Filter: @@ -1149,23 +1149,23 @@ Analysis is aborted. - + License Lisenssi - + Authors Tekijät - + Save the report file Tallenna raportti - - + + XML files (*.xml) XML-tiedostot (*xml) @@ -1221,35 +1221,35 @@ This is probably because the settings were changed between the Cppcheck versions - + Open the report file - + Text files (*.txt) Tekstitiedostot (*.txt) - + CSV files (*.csv) - + Project files (*.cppcheck);;All files(*.*) - + Select Project File - - - + + + Project: @@ -1301,7 +1301,7 @@ Do you want to proceed analysis without using any of these project files? - + Current results will be cleared. Opening a new XML file will clear current results. @@ -1309,81 +1309,81 @@ Do you want to proceed? - + Analyzer is running. Do you want to stop the analysis and exit Cppcheck? - + About - + XML files (*.xml);;Text files (*.txt);;CSV files (*.csv) - + Cannot generate a compliance report right now, an analysis must finish successfully. Try to reanalyze the code and ensure there are no critical errors. - + Build dir '%1' does not exist, create it? - + To check the project using addons, you need a build directory. - + Failed to open file - + Unknown project file format - + Failed to import project file - + Failed to import '%1': %2 Analysis is stopped. - + Failed to import '%1' (%2), analysis is stopped - + Project files (*.cppcheck) - + Select Project Filename - + No project file loaded - + The project file %1 @@ -1394,67 +1394,67 @@ Do you want to remove the file from the recently used projects -list? - + Install - + New version available: %1. %2 - + Show Mandatory - + Show Required - + Show Advisory - + Show Document - + Show L1 - + Show L2 - + Show L3 - + Show style - + Show portability - + Show performance - + Show information @@ -1590,17 +1590,17 @@ Options: - + MISRA rule texts - + <html><head/><body><p>Copy/paste the text from Appendix A &quot;Summary of guidelines&quot; from the MISRA C 2012 pdf to a text file.</p></body></html> - + ... @@ -1770,37 +1770,42 @@ Options: - + + 2025 + + + + Misra C++ - + 2008 - + Cert C - + CERT-INT35-C: int precision (if size equals precision, you can leave empty) - + Autosar - + Bug hunting - + External tools @@ -1912,27 +1917,27 @@ Options: - + 2023 - + Cert C++ - + Bug hunting (Premium) - + Clang analyzer - + Clang-tidy @@ -1945,82 +1950,82 @@ Options: ProjectFileDialog - + Project file: %1 - + Select Cppcheck build dir - + Select include directory - + Select a directory to check - + Note: Open source Cppcheck does not fully implement Misra C 2012 - + Clang-tidy (not found) - + Visual Studio - + Compile database - + Borland C++ Builder 6 - + Import Project - + Select directory to ignore - + Source files - + All files - + Exclude file - + Select MISRA rule texts file - + MISRA rule texts file (%1) @@ -2055,7 +2060,7 @@ Options: - + (Not found) diff --git a/gui/cppcheck_fr.ts b/gui/cppcheck_fr.ts index ed82d78bc7d..d4ad2804a90 100644 --- a/gui/cppcheck_fr.ts +++ b/gui/cppcheck_fr.ts @@ -491,14 +491,14 @@ Paramètres : -l(ligne) (fichier) - - - - - - - - + + + + + + + + Cppcheck @@ -694,38 +694,38 @@ Paramètres : -l(ligne) (fichier) - + License Licence - + Authors Auteurs - + Save the report file Sauvegarder le rapport - - + + XML files (*.xml) Fichiers XML (*.xml) - + About - + Text files (*.txt) Fichiers Texte (*.txt) - + CSV files (*.csv) Fichiers CSV (*.csv) @@ -748,7 +748,7 @@ Paramètres : -l(ligne) (fichier) - + Show errors Afficher les erreurs @@ -820,7 +820,7 @@ Paramètres : -l(ligne) (fichier) - + Show warnings Afficher les avertissements @@ -857,129 +857,129 @@ Paramètres : -l(ligne) (fichier) Vous devez d'abord fermer le projet avant de choisir des fichiers/répertoires - + Open the report file Ouvrir le rapport - + Cannot generate a compliance report right now, an analysis must finish successfully. Try to reanalyze the code and ensure there are no critical errors. - + Project files (*.cppcheck);;All files(*.*) - + Select Project File - + To check the project using addons, you need a build directory. - + Failed to open file - + Unknown project file format - + Failed to import project file - + Failed to import '%1': %2 Analysis is stopped. - + Failed to import '%1' (%2), analysis is stopped - + Select Project Filename - + No project file loaded - + Install - + New version available: %1. %2 - + Show Mandatory - + Show Required - + Show Advisory - + Show Document - + Show L1 - + Show L2 - + Show L3 - + Show style - + Show portability - + Show performance - + Show information @@ -1002,7 +1002,7 @@ This is probably because the settings were changed between the Cppcheck versions - + Quick Filter: Filtre rapide : @@ -1015,14 +1015,14 @@ Do you want to load this project file instead? - - - + + + Project: Projet : - + The project file %1 @@ -1188,7 +1188,7 @@ Options: - + Build dir '%1' does not exist, create it? @@ -1216,7 +1216,7 @@ Options: - + XML files (*.xml);;Text files (*.txt);;CSV files (*.csv) @@ -1285,7 +1285,7 @@ Analysis is aborted. - + Analyzer is running. Do you want to stop the analysis and exit Cppcheck? @@ -1432,7 +1432,7 @@ Do you want to stop the analysis and exit Cppcheck? - + Project files (*.cppcheck) @@ -1477,7 +1477,7 @@ Do you want to stop the analysis and exit Cppcheck? - + Current results will be cleared. Opening a new XML file will clear current results. @@ -1615,7 +1615,7 @@ Do you want to proceed? - + ... @@ -1716,32 +1716,32 @@ Do you want to proceed? - + Cert C - + CERT-INT35-C: int precision (if size equals precision, you can leave empty) - + Autosar - + Bug hunting - + Clang analyzer - + Clang-tidy @@ -1859,42 +1859,47 @@ Do you want to proceed? - + 2023 - + + 2025 + + + + MISRA rule texts - + <html><head/><body><p>Copy/paste the text from Appendix A &quot;Summary of guidelines&quot; from the MISRA C 2012 pdf to a text file.</p></body></html> - + Misra C++ - + 2008 - + Cert C++ - + Bug hunting (Premium) - + External tools @@ -1934,82 +1939,82 @@ Do you want to proceed? ProjectFileDialog - + Project file: %1 Fichier projet : %1 - + Select include directory Selectionner un répertoire à inclure - + Select directory to ignore Selectionner un répertoire à ignorer - + Select a directory to check Selectionner un répertoire à vérifier - + Select Cppcheck build dir - + Import Project - + Clang-tidy (not found) - + Note: Open source Cppcheck does not fully implement Misra C 2012 - + Source files - + All files - + Exclude file - + Select MISRA rule texts file - + MISRA rule texts file (%1) - + Visual Studio - + Compile database - + Borland C++ Builder 6 @@ -2042,7 +2047,7 @@ Do you want to proceed? - + (Not found) diff --git a/gui/cppcheck_it.ts b/gui/cppcheck_it.ts index 27692d41b6f..82798d769cb 100644 --- a/gui/cppcheck_it.ts +++ b/gui/cppcheck_it.ts @@ -494,14 +494,14 @@ Parametri: -l(line) (file) - - - - - - - - + + + + + + + + Cppcheck Cppcheck @@ -645,14 +645,14 @@ Parametri: -l(line) (file) - + Show errors Mostra gli errori - + Show warnings Mostra gli avvisi @@ -1078,7 +1078,7 @@ Parametri: -l(line) (file) - + Quick Filter: Rapido filtro: @@ -1165,23 +1165,23 @@ Analysis is aborted. - + License Licenza - + Authors Autori - + Save the report file Salva il file di rapporto - - + + XML files (*.xml) File XML (*.xml) @@ -1234,35 +1234,35 @@ Probabilmente ciò è avvenuto perché le impostazioni sono state modificate tra - + Open the report file Apri il file di rapporto - + Text files (*.txt) File di testo (*.txt) - + CSV files (*.csv) Files CSV (*.csv) - + Project files (*.cppcheck);;All files(*.*) Files di progetto (*.cppcheck);;Tutti i files(*.*) - + Select Project File Seleziona il file di progetto - - - + + + Project: Progetto: @@ -1314,7 +1314,7 @@ Do you want to proceed analysis without using any of these project files? - + Current results will be cleared. Opening a new XML file will clear current results. @@ -1322,81 +1322,81 @@ Do you want to proceed? - + Analyzer is running. Do you want to stop the analysis and exit Cppcheck? - + About - + XML files (*.xml);;Text files (*.txt);;CSV files (*.csv) - + Cannot generate a compliance report right now, an analysis must finish successfully. Try to reanalyze the code and ensure there are no critical errors. - + Build dir '%1' does not exist, create it? - + To check the project using addons, you need a build directory. - + Failed to open file - + Unknown project file format - + Failed to import project file - + Failed to import '%1': %2 Analysis is stopped. - + Failed to import '%1' (%2), analysis is stopped - + Project files (*.cppcheck) - + Select Project Filename Seleziona il nome del file di progetto - + No project file loaded Nessun file di progetto caricato - + The project file %1 @@ -1413,67 +1413,67 @@ Do you want to remove the file from the recently used projects -list? Vuoi rimuovere il file dalla lista dei progetti recentemente usati? - + Install - + New version available: %1. %2 - + Show Mandatory - + Show Required - + Show Advisory - + Show Document - + Show L1 - + Show L2 - + Show L3 - + Show style - + Show portability - + Show performance - + Show information @@ -1640,22 +1640,22 @@ Options: - + 2023 - + MISRA rule texts - + <html><head/><body><p>Copy/paste the text from Appendix A &quot;Summary of guidelines&quot; from the MISRA C 2012 pdf to a text file.</p></body></html> - + ... @@ -1800,37 +1800,42 @@ Options: Abilita le soppressioni - + + 2025 + + + + Misra C++ - + 2008 - + Cert C - + CERT-INT35-C: int precision (if size equals precision, you can leave empty) - + Autosar - + Bug hunting - + External tools @@ -1936,22 +1941,22 @@ Options: - + Cert C++ - + Bug hunting (Premium) - + Clang analyzer - + Clang-tidy @@ -1964,82 +1969,82 @@ Options: ProjectFileDialog - + Project file: %1 File di progetto: %1 - + Select Cppcheck build dir - + Select include directory Seleziona la cartella da includere - + Select a directory to check Seleziona una cartella da scansionare - + Note: Open source Cppcheck does not fully implement Misra C 2012 - + Clang-tidy (not found) - + Visual Studio - + Compile database - + Borland C++ Builder 6 - + Import Project - + Select directory to ignore Seleziona la cartella da ignorare - + Source files - + All files - + Exclude file - + Select MISRA rule texts file - + MISRA rule texts file (%1) @@ -2072,7 +2077,7 @@ Options: - + (Not found) diff --git a/gui/cppcheck_ja.ts b/gui/cppcheck_ja.ts index 02498fdcee1..987148d5398 100644 --- a/gui/cppcheck_ja.ts +++ b/gui/cppcheck_ja.ts @@ -508,14 +508,14 @@ Parameters: -l(line) (file) - - - - - - - - + + + + + + + + Cppcheck Cppcheck @@ -670,7 +670,7 @@ Parameters: -l(line) (file) - + Show errors エラーを表示 @@ -783,7 +783,7 @@ Parameters: -l(line) (file) - + Show warnings 警告を表示 @@ -1106,7 +1106,7 @@ Cppcheckの古いバージョンの設定には互換性がありません。エ - + Quick Filter: クイックフィルタ: @@ -1200,73 +1200,73 @@ Do you want to load this project file instead? %1 - %2 の読み込みに失敗 - - + + XML files (*.xml) XML ファイル (*.xml) - + Open the report file レポートを開く - + License ライセンス - + Authors 作者 - + Save the report file レポートを保存 - + Text files (*.txt) テキストファイル (*.txt) - + CSV files (*.csv) CSV形式ファイル (*.csv) - + Cannot generate a compliance report right now, an analysis must finish successfully. Try to reanalyze the code and ensure there are no critical errors. コンプライアンスレポートをすぐに生成できません。解析が完了し成功していなければなりません。コードを再解析して、致命的なエラーがないことを確認してください。 - + Project files (*.cppcheck);;All files(*.*) プロジェクトファイル (*.cppcheck);;すべてのファイル(*.*) - + Select Project File プロジェクトファイルを選択 - + Failed to open file ファイルを開くのに失敗しました - + Unknown project file format プロジェクトファイルの形式が不明です - + Failed to import project file プロジェクトファイルのインポートに失敗しました - + Failed to import '%1': %2 Analysis is stopped. @@ -1275,25 +1275,25 @@ Analysis is stopped. 解析を停止しました。 - + Failed to import '%1' (%2), analysis is stopped '%1' (%2) のインポートに失敗しました。解析は停止 - + Install インストール - + New version available: %1. %2 新しいバージョンが利用可能です。: %1. %2 - - - + + + Project: プロジェクト: @@ -1386,7 +1386,7 @@ Analysis is aborted. 解析は中止した。 - + Current results will be cleared. Opening a new XML file will clear current results. @@ -1396,7 +1396,7 @@ Do you want to proceed? 新しくXMLファイルを開くと現在の結果が削除されます。実行しますか? - + Analyzer is running. Do you want to stop the analysis and exit Cppcheck? @@ -1405,77 +1405,77 @@ Do you want to stop the analysis and exit Cppcheck? チェックを中断して、Cppcheckを終了しますか? - + About CppCheckについて - + XML files (*.xml);;Text files (*.txt);;CSV files (*.csv) XML ファイル (*.xml);;テキストファイル (*.txt);;CSVファイル (*.csv) - + Build dir '%1' does not exist, create it? ビルドディレクトリ'%1'がありません。作成しますか? - + To check the project using addons, you need a build directory. アドオンを使用してプロジェクトをチェックするためには、ビルドディレクトリが必要です。 - + Show Mandatory 必須を表示 - + Show Required 要求を表示 - + Show Advisory 推奨を表示 - + Show Document ドキュメントを表示 - + Show L1 L1を表示 - + Show L2 L2を表示 - + Show L3 L3を表示 - + Show style スタイルを表示 - + Show portability 移植可能性を表示 - + Show performance パフォーマンスを表示 - + Show information 情報を表示 @@ -1484,22 +1484,22 @@ Do you want to stop the analysis and exit Cppcheck? '%1'のインポートに失敗しました。(チェック中断) - + Project files (*.cppcheck) プロジェクトファイル (*.cppcheck) - + Select Project Filename プロジェクトファイル名を選択 - + No project file loaded プロジェクトファイルが読み込まれていません - + The project file %1 @@ -1657,17 +1657,17 @@ Options: MISRA C 2012 - + MISRA rule texts MISRA ルールテキスト - + <html><head/><body><p>Copy/paste the text from Appendix A &quot;Summary of guidelines&quot; from the MISRA C 2012 pdf to a text file.</p></body></html> <html><head/><body><p>MISRA C 2012 pdfのAppendix A &quot;Summary of guidelines&quot; からテキストをコピーペーストしてください。</p></body></html> - + ... ... @@ -1848,32 +1848,37 @@ Options: - + 2023 2023 - + + 2025 + 2025 + + + Misra C++ MISRA C++ - + 2008 2008 - + Cert C++ Cert C++ - + Bug hunting (Premium) バグハンティング(プレミアム) - + External tools 外部ツール @@ -1978,12 +1983,12 @@ Options: MISRA C 2012 - + Cert C CERT C - + CERT-INT35-C: int precision (if size equals precision, you can leave empty) CERT-INT35-C: int型の精度 (もしサイズが精度と一致する場合空のままにしてください) @@ -1992,22 +1997,22 @@ Options: MISRA C++ 2008 - + Autosar AUTOSAR - + Bug hunting バグハント - + Clang analyzer Clang Analyzer - + Clang-tidy Clang-tidy @@ -2020,82 +2025,82 @@ Options: ProjectFileDialog - + Project file: %1 プロジェクトファイル:%1 - + Select Cppcheck build dir Cppcheckビルドディレクトリ - + Select include directory includeディレクトリを選択 - + Select a directory to check チェックするディレクトリを選択してください - + Note: Open source Cppcheck does not fully implement Misra C 2012 - + Clang-tidy (not found) Clang-tidy (みつかりません) - + Visual Studio Visual Studio - + Compile database コンパイルデータベース - + Borland C++ Builder 6 Borland C++ Builder 6 - + Import Project プロジェクトのインポート - + Select directory to ignore 除外するディレクトリを選択してください - + Source files ソースファイル - + All files 全ファイル - + Exclude file 除外ファイル - + Select MISRA rule texts file MISRAルールテキストファイルを選択 - + MISRA rule texts file (%1) MISRAルールテキストファイル (%1) @@ -2136,7 +2141,7 @@ Options: 行 %1: 必須の属性 '%2' が '%3'にない - + (Not found) (見つかりません) diff --git a/gui/cppcheck_ka.ts b/gui/cppcheck_ka.ts index f7893679dd8..064003598f3 100644 --- a/gui/cppcheck_ka.ts +++ b/gui/cppcheck_ka.ts @@ -484,14 +484,14 @@ Parameters: -l(line) (file) - - - - - - - - + + + + + + + + Cppcheck Cppcheck @@ -635,14 +635,14 @@ Parameters: -l(line) (file) - + Show errors შეცდომების ჩვენება - + Show warnings გაფრთხილების ჩვენება @@ -1068,7 +1068,7 @@ Parameters: -l(line) (file) - + Quick Filter: სწრაფი ფილტრი: @@ -1160,23 +1160,23 @@ Analysis is aborted. ანალიზი შეწყვეტილია. - + License ლიცენზია - + Authors ავტორები - + Save the report file ანგარიშის ფაილში ჩაწერა - - + + XML files (*.xml) XML ფაილები (*.xml) @@ -1228,35 +1228,35 @@ This is probably because the settings were changed between the Cppcheck versions შეცდომა - + Open the report file ანგარიშის ფაილის გახსნა - + Text files (*.txt) ტექსტური ფაილები (*.txt) - + CSV files (*.csv) CSV ფაილები (*.csv) - + Project files (*.cppcheck);;All files(*.*) პროექტის ფაილები (*.cppcheck);;ყველა ფაილი(*.*) - + Select Project File აირჩიეთ პროექტის ფაილი - - - + + + Project: პროექტი: @@ -1310,7 +1310,7 @@ Do you want to proceed analysis without using any of these project files? - + Current results will be cleared. Opening a new XML file will clear current results. @@ -1321,7 +1321,7 @@ Do you want to proceed? გნებავთ, გააგრძელოთ? - + Analyzer is running. Do you want to stop the analysis and exit Cppcheck? @@ -1330,47 +1330,47 @@ Do you want to stop the analysis and exit Cppcheck? გნებავთ, გააჩეროთ ანალიზი და გახვიდეთ Cppcheck-დან? - + About შესახებ - + XML files (*.xml);;Text files (*.txt);;CSV files (*.csv) XML ფაილები (*.xml);;ტექსტური ფაილები (*.txt);;CSV ფაილები (*.csv) - + Cannot generate a compliance report right now, an analysis must finish successfully. Try to reanalyze the code and ensure there are no critical errors. შესაბამისობის ანგარიშის გენერაცია ახლა შეუძლებელია, რადგან ჯერ ანალიზი წარმატებით უნდა დასრულდეს. სცადეთ, კოდის ანალიზი თავიდან გაუშვათ და დარწმუნდეთ, რომ კრიტიკული შეცდომები არ არსებობს. - + Build dir '%1' does not exist, create it? აგების საქაღალდე (%1) არ არსებობს. შევქმნა? - + To check the project using addons, you need a build directory. პროექტის დამატებებით შესამოწმებლად აგების საქაღალდე გჭირდებათ. - + Failed to open file ფაილის გახსნის შეცდომა - + Unknown project file format უცნობი პროექტის ფაილის ფორმატი - + Failed to import project file პროექტის ფაილის შემოტანა ჩავარდა - + Failed to import '%1': %2 Analysis is stopped. @@ -1379,27 +1379,27 @@ Analysis is stopped. ანალიზი შეწყდა. - + Failed to import '%1' (%2), analysis is stopped '%1'-ის (%2) შემოტანა ჩავარდა. ანალიზი შეწყდა - + Project files (*.cppcheck) პროექტის ფაილები (*.cppcheck) - + Select Project Filename აირჩიეთ პროექტის ფაილის სახელი - + No project file loaded პროექტის ფაილი ჩატვირთული არაა - + The project file %1 @@ -1416,67 +1416,67 @@ Do you want to remove the file from the recently used projects -list? გნებავთ წაშალოთ ეს ფაილი ახლახან გამოყენებული პროექტების სიიდან? - + Install დაყენება - + New version available: %1. %2 ხელმისაწვდომია ახალი ვერსია: %1. %2 - + Show Mandatory - + Show Required - + Show Advisory - + Show Document - + Show L1 - + Show L2 - + Show L3 - + Show style - + Show portability - + Show performance - + Show information @@ -1670,17 +1670,17 @@ Options: ფაილის ამოღება... - + MISRA rule texts MISRA-ის წესის ტექსტები - + <html><head/><body><p>Copy/paste the text from Appendix A &quot;Summary of guidelines&quot; from the MISRA C 2012 pdf to a text file.</p></body></html> - + ... ... @@ -1825,37 +1825,42 @@ Options: შეცდომების ხაზშივე ჩახშობის ჩართვა - + + 2025 + 2025 + + + Misra C++ Misra C++ - + 2008 2008 - + Cert C Cert C - + CERT-INT35-C: int precision (if size equals precision, you can leave empty) CERT-INT35-C: მთელი რიცხვის სიზუსტე (თუ ზომა სიზუსტეს ემთხვევა, შეგიძლიათ, ცარიელი დატოვოთ) - + Autosar - + Bug hunting შეცდომებზე ნადირობა - + External tools გარე ხელსაწყოები @@ -1947,27 +1952,27 @@ Options: - + 2023 2023 - + Cert C++ Cert C++ - + Bug hunting (Premium) შეცდომებზე ნადირობა (ფასიანი) - + Clang analyzer Clang-ის ანალიზატორი - + Clang-tidy Clang-tidy @@ -1980,82 +1985,82 @@ Options: ProjectFileDialog - + Project file: %1 პროექტის ფაილი: %1 - + Select Cppcheck build dir აირჩიეთ Cppcheck-ის აგების საქაღალდე - + Select include directory აირჩიეთ ჩასასმელი საქაღალდე - + Select a directory to check აირჩიეთ შესამოწმებელი საქაღალდე - + Note: Open source Cppcheck does not fully implement Misra C 2012 - + Clang-tidy (not found) Clang-tidy (ვერ ვიპოვე) - + Visual Studio Visual Studio - + Compile database მონაცემთა ბაზის კომპილაცია - + Borland C++ Builder 6 Borland C++ Builder 6 - + Import Project პროექტის შემოტანა - + Select directory to ignore აირჩიეთ გამოსატოვებელი საქაღალდე - + Source files კოდის ფაილები - + All files ყველა ფაილი - + Exclude file ფაილის ამოღება - + Select MISRA rule texts file აირჩიეთ MISRA-ის წესების ტექსტის ფაილი - + MISRA rule texts file (%1) MISRA-ის წესის ტექსტების ფაილი (%1) @@ -2090,7 +2095,7 @@ Options: ხაზი %1: აუცილებელი ატრიბუტი '%2' '%3'-ში აღმოჩენილი არაა - + (Not found) (ვერ ვიპოვე) diff --git a/gui/cppcheck_ko.ts b/gui/cppcheck_ko.ts index b9155ad0e0b..f4eaf1e658d 100644 --- a/gui/cppcheck_ko.ts +++ b/gui/cppcheck_ko.ts @@ -491,14 +491,14 @@ Kate로 파일을 열고, 해당 행으로 이동하는 예제: - - - - - - - - + + + + + + + + Cppcheck Cppcheck @@ -642,7 +642,7 @@ Kate로 파일을 열고, 해당 행으로 이동하는 예제: - + Show errors 애러 표시 @@ -749,7 +749,7 @@ Kate로 파일을 열고, 해당 행으로 이동하는 예제: - + Show warnings 경고 표시 @@ -857,7 +857,7 @@ Kate로 파일을 열고, 해당 행으로 이동하는 예제: - + Quick Filter: 빠른 필터: @@ -885,153 +885,153 @@ Do you want to load this project file instead? 이 프로젝트 파일을 불러오겠습니까? - - + + XML files (*.xml) XML 파일 (*.xml) - + Open the report file 보고서 파일 열기 - + License 저작권 - + Authors 제작자 - + Save the report file 보고서 파일 저장 - + Text files (*.txt) 텍스트 파일 (*.txt) - + CSV files (*.csv) CSV 파일 (*.csv) - + Cannot generate a compliance report right now, an analysis must finish successfully. Try to reanalyze the code and ensure there are no critical errors. - + Project files (*.cppcheck);;All files(*.*) 프로젝트 파일 (*.cppcheck);;모든 파일(*.*) - + Select Project File 프로젝트 파일 선택 - + Failed to open file - + Unknown project file format - + Failed to import project file - + Failed to import '%1': %2 Analysis is stopped. - + Failed to import '%1' (%2), analysis is stopped - + Install - + New version available: %1. %2 - + Show Mandatory - + Show Required - + Show Advisory - + Show Document - + Show L1 - + Show L2 - + Show L3 - + Show style - + Show portability - + Show performance - + Show information - - - + + + Project: 프로젝트: @@ -1073,27 +1073,27 @@ Analysis is aborted. - + About - + To check the project using addons, you need a build directory. - + Select Project Filename 프로젝트 파일이름 선택 - + No project file loaded 프로젝트 파일 불러오기 실패 - + The project file %1 @@ -1233,7 +1233,7 @@ Options: - + Build dir '%1' does not exist, create it? @@ -1261,7 +1261,7 @@ Options: - + XML files (*.xml);;Text files (*.txt);;CSV files (*.csv) @@ -1293,7 +1293,7 @@ Do you want to proceed analysis without using any of these project files? - + Analyzer is running. Do you want to stop the analysis and exit Cppcheck? @@ -1440,7 +1440,7 @@ Do you want to stop the analysis and exit Cppcheck? C++14 - + Project files (*.cppcheck) @@ -1485,7 +1485,7 @@ Do you want to stop the analysis and exit Cppcheck? - + Current results will be cleared. Opening a new XML file will clear current results. @@ -1623,7 +1623,7 @@ Do you want to proceed? - + ... @@ -1724,32 +1724,32 @@ Do you want to proceed? - + Cert C - + CERT-INT35-C: int precision (if size equals precision, you can leave empty) - + Autosar - + Bug hunting - + Clang analyzer - + Clang-tidy @@ -1867,42 +1867,47 @@ Do you want to proceed? - + 2023 - + + 2025 + + + + MISRA rule texts - + <html><head/><body><p>Copy/paste the text from Appendix A &quot;Summary of guidelines&quot; from the MISRA C 2012 pdf to a text file.</p></body></html> - + Misra C++ - + 2008 - + Cert C++ - + Bug hunting (Premium) - + External tools @@ -1942,82 +1947,82 @@ Do you want to proceed? ProjectFileDialog - + Project file: %1 프로젝트 파일: %1 - + Select include directory Include 디렉토리 선택 - + Select a directory to check 검사할 디렉토리 선택 - + Select directory to ignore 무시할 디렉토리 선택 - + Select Cppcheck build dir - + Import Project - + Clang-tidy (not found) - + Note: Open source Cppcheck does not fully implement Misra C 2012 - + Source files - + All files - + Exclude file - + Select MISRA rule texts file - + MISRA rule texts file (%1) - + Visual Studio - + Compile database - + Borland C++ Builder 6 @@ -2050,7 +2055,7 @@ Do you want to proceed? - + (Not found) diff --git a/gui/cppcheck_nl.ts b/gui/cppcheck_nl.ts index be2c2008bdb..3313413bcde 100644 --- a/gui/cppcheck_nl.ts +++ b/gui/cppcheck_nl.ts @@ -495,14 +495,14 @@ Parameters: -l(lijn) (bestand) - - - - - - - - + + + + + + + + Cppcheck Cppcheck @@ -646,14 +646,14 @@ Parameters: -l(lijn) (bestand) - + Show errors Toon fouten - + Show warnings Toon waarschuwingen @@ -1079,7 +1079,7 @@ Parameters: -l(lijn) (bestand) - + Quick Filter: Snel Filter: @@ -1160,23 +1160,23 @@ Analysis is aborted. - + License Licentie - + Authors Auteurs - + Save the report file Rapport opslaan - - + + XML files (*.xml) XML bestanden (*.xml) @@ -1234,35 +1234,35 @@ Dit is waarschijnlijk omdat de instellingen zijn gewijzigd tussen de versies van - + Open the report file Open het rapport bestand - + Text files (*.txt) Tekst bestanden (*.txt) - + CSV files (*.csv) CSV bestanden (*.csv) - + Project files (*.cppcheck);;All files(*.*) Project bestanden (*.cppcheck);;Alle bestanden(*.*) - + Select Project File Selecteer project bestand - - - + + + Project: Project: @@ -1314,7 +1314,7 @@ Do you want to proceed analysis without using any of these project files? - + Current results will be cleared. Opening a new XML file will clear current results. @@ -1322,81 +1322,81 @@ Do you want to proceed? - + Analyzer is running. Do you want to stop the analysis and exit Cppcheck? - + About - + XML files (*.xml);;Text files (*.txt);;CSV files (*.csv) - + Cannot generate a compliance report right now, an analysis must finish successfully. Try to reanalyze the code and ensure there are no critical errors. - + Build dir '%1' does not exist, create it? - + To check the project using addons, you need a build directory. - + Failed to open file - + Unknown project file format - + Failed to import project file - + Failed to import '%1': %2 Analysis is stopped. - + Failed to import '%1' (%2), analysis is stopped - + Project files (*.cppcheck) - + Select Project Filename Selecteer project bestandsnaam - + No project file loaded Geen project bestand geladen - + The project file %1 @@ -1412,67 +1412,67 @@ Kan niet worden gevonden! Wilt u het bestand van de onlangs gebruikte project verwijderen -lijst? - + Install - + New version available: %1. %2 - + Show Mandatory - + Show Required - + Show Advisory - + Show Document - + Show L1 - + Show L2 - + Show L3 - + Show style - + Show portability - + Show performance - + Show information @@ -1639,22 +1639,22 @@ Options: - + 2023 - + MISRA rule texts - + <html><head/><body><p>Copy/paste the text from Appendix A &quot;Summary of guidelines&quot; from the MISRA C 2012 pdf to a text file.</p></body></html> - + ... @@ -1799,37 +1799,42 @@ Options: Schakel inline suppressies in - + + 2025 + + + + Misra C++ - + 2008 - + Cert C - + CERT-INT35-C: int precision (if size equals precision, you can leave empty) - + Autosar - + Bug hunting - + External tools @@ -1935,22 +1940,22 @@ Options: - + Cert C++ - + Bug hunting (Premium) - + Clang analyzer - + Clang-tidy @@ -1963,82 +1968,82 @@ Options: ProjectFileDialog - + Project file: %1 Project Bestand %1 - + Select Cppcheck build dir - + Select include directory Selecteer include map - + Select a directory to check Selecteer een map om te controleren - + Note: Open source Cppcheck does not fully implement Misra C 2012 - + Clang-tidy (not found) - + Visual Studio - + Compile database - + Borland C++ Builder 6 - + Import Project - + Select directory to ignore Selecteer een map om te negeren - + Source files - + All files - + Exclude file - + Select MISRA rule texts file - + MISRA rule texts file (%1) @@ -2073,7 +2078,7 @@ Options: - + (Not found) diff --git a/gui/cppcheck_ru.ts b/gui/cppcheck_ru.ts index 8bd69b47306..165e936b24a 100644 --- a/gui/cppcheck_ru.ts +++ b/gui/cppcheck_ru.ts @@ -495,14 +495,14 @@ Parameters: -l(line) (file) - - - - - - - - + + + + + + + + Cppcheck Cppcheck @@ -646,14 +646,14 @@ Parameters: -l(line) (file) - + Show errors Показать ошибки - + Show warnings Показать предупреждения @@ -1079,7 +1079,7 @@ Parameters: -l(line) (file) - + Quick Filter: Быстрый фильтр: @@ -1167,23 +1167,23 @@ Analysis is aborted. - + License Лицензия - + Authors Авторы - + Save the report file Сохранить файл с отчетом - - + + XML files (*.xml) XML-файлы (*.xml) @@ -1241,35 +1241,35 @@ This is probably because the settings were changed between the Cppcheck versions Невозможно загрузить %1. Cppcheck установлен некорректно. Вы можете использовать --data-dir=<directory> в командной строке для указания расположения файлов конфигурации. Обратите внимание, что --data-dir предназначен для использования сценариями установки. При включении данной опции, графический интерфейс пользователя не запускается. - + Open the report file Открыть файл с отчетом - + Text files (*.txt) Текстовые файлы (*.txt) - + CSV files (*.csv) CSV файлы(*.csv) - + Project files (*.cppcheck);;All files(*.*) Файлы проекта (*.cppcheck);;Все файлы(*.*) - + Select Project File Выберите файл проекта - - - + + + Project: Проект: @@ -1323,7 +1323,7 @@ Do you want to proceed analysis without using any of these project files? - + Current results will be cleared. Opening a new XML file will clear current results. @@ -1334,7 +1334,7 @@ Do you want to proceed? Вы хотите продолжить? - + Analyzer is running. Do you want to stop the analysis and exit Cppcheck? @@ -1343,109 +1343,109 @@ Do you want to stop the analysis and exit Cppcheck? Вы хотите остановить анализ и выйти из Cppcheck? - + About - + XML files (*.xml);;Text files (*.txt);;CSV files (*.csv) XML файлы (*.xml);;Текстовые файлы (*.txt);;CSV файлы (*.csv) - + Cannot generate a compliance report right now, an analysis must finish successfully. Try to reanalyze the code and ensure there are no critical errors. - + Build dir '%1' does not exist, create it? Директория для сборки '%1' не существует, создать? - + To check the project using addons, you need a build directory. - + Failed to open file - + Unknown project file format - + Failed to import project file - + Failed to import '%1': %2 Analysis is stopped. - + Failed to import '%1' (%2), analysis is stopped - + Show Mandatory - + Show Required - + Show Advisory - + Show Document - + Show L1 - + Show L2 - + Show L3 - + Show style - + Show portability - + Show performance - + Show information @@ -1454,22 +1454,22 @@ Analysis is stopped. Невозможно импортировать '%1', анализ остановлен - + Project files (*.cppcheck) Файлы проекта (*.cppcheck) - + Select Project Filename Выберите имя файла для проекта - + No project file loaded Файл с проектом не загружен - + The project file %1 @@ -1485,12 +1485,12 @@ Do you want to remove the file from the recently used projects -list? Хотите удалить его из списка проектов? - + Install - + New version available: %1. %2 @@ -1688,17 +1688,17 @@ Options: MISRA C 2012 - + MISRA rule texts Файл с текстами правил MISRA - + <html><head/><body><p>Copy/paste the text from Appendix A &quot;Summary of guidelines&quot; from the MISRA C 2012 pdf to a text file.</p></body></html> <html><head/><body><p>Скопируйте текст из Appendix A &quot;Summary of guidelines&quot; из фала правил MISRA C 2012 pdf в текстовый файл.</p></body></html> - + ... ... @@ -1843,37 +1843,42 @@ Options: Включить inline-подавление ошибок - + + 2025 + + + + Misra C++ - + 2008 - + Cert C - + CERT-INT35-C: int precision (if size equals precision, you can leave empty) - + Autosar - + Bug hunting - + External tools Внешние инструменты @@ -1965,27 +1970,27 @@ Options: - + 2023 - + Cert C++ - + Bug hunting (Premium) - + Clang analyzer - + Clang-tidy @@ -1998,82 +2003,82 @@ Options: ProjectFileDialog - + Project file: %1 Файл проекта: %1 - + Select Cppcheck build dir Выбрать директорию сборки Cppcheck - + Select include directory Выберите директорию для поиска заголовочных файлов - + Select a directory to check Выберите директорию для проверки - + Note: Open source Cppcheck does not fully implement Misra C 2012 - + Clang-tidy (not found) Clang-tidy (не найден) - + Visual Studio Visual Studio - + Compile database - + Borland C++ Builder 6 Borland C++ Builder 6 - + Import Project Импорт проекта - + Select directory to ignore Выберите директорию, которую надо проигнорировать - + Source files - + All files - + Exclude file - + Select MISRA rule texts file Выбрать файл текстов правил MISRA - + MISRA rule texts file (%1) Файл текстов правил MISRA (%1) @@ -2108,7 +2113,7 @@ Options: - + (Not found) (Недоступно) diff --git a/gui/cppcheck_sr.ts b/gui/cppcheck_sr.ts index 113338df6a9..520f1ce980f 100644 --- a/gui/cppcheck_sr.ts +++ b/gui/cppcheck_sr.ts @@ -483,14 +483,14 @@ Parameters: -l(line) (file) - - - - - - - - + + + + + + + + Cppcheck Cppcheck @@ -634,14 +634,14 @@ Parameters: -l(line) (file) - + Show errors - + Show warnings @@ -1067,7 +1067,7 @@ Parameters: -l(line) (file) - + Quick Filter: @@ -1147,23 +1147,23 @@ Analysis is aborted. - + License License - + Authors Authors - + Save the report file Save the report file - - + + XML files (*.xml) XML files (*.xml) @@ -1219,35 +1219,35 @@ This is probably because the settings were changed between the Cppcheck versions - + Open the report file - + Text files (*.txt) Text files (*.txt) - + CSV files (*.csv) - + Project files (*.cppcheck);;All files(*.*) - + Select Project File - - - + + + Project: @@ -1299,7 +1299,7 @@ Do you want to proceed analysis without using any of these project files? - + Current results will be cleared. Opening a new XML file will clear current results. @@ -1307,81 +1307,81 @@ Do you want to proceed? - + Analyzer is running. Do you want to stop the analysis and exit Cppcheck? - + About - + XML files (*.xml);;Text files (*.txt);;CSV files (*.csv) - + Cannot generate a compliance report right now, an analysis must finish successfully. Try to reanalyze the code and ensure there are no critical errors. - + Build dir '%1' does not exist, create it? - + To check the project using addons, you need a build directory. - + Failed to open file - + Unknown project file format - + Failed to import project file - + Failed to import '%1': %2 Analysis is stopped. - + Failed to import '%1' (%2), analysis is stopped - + Project files (*.cppcheck) - + Select Project Filename - + No project file loaded - + The project file %1 @@ -1392,67 +1392,67 @@ Do you want to remove the file from the recently used projects -list? - + Install - + New version available: %1. %2 - + Show Mandatory - + Show Required - + Show Advisory - + Show Document - + Show L1 - + Show L2 - + Show L3 - + Show style - + Show portability - + Show performance - + Show information @@ -1588,17 +1588,17 @@ Options: - + MISRA rule texts - + <html><head/><body><p>Copy/paste the text from Appendix A &quot;Summary of guidelines&quot; from the MISRA C 2012 pdf to a text file.</p></body></html> - + ... @@ -1768,37 +1768,42 @@ Options: - + + 2025 + + + + Misra C++ - + 2008 - + Cert C - + CERT-INT35-C: int precision (if size equals precision, you can leave empty) - + Autosar - + Bug hunting - + External tools @@ -1910,27 +1915,27 @@ Options: - + 2023 - + Cert C++ - + Bug hunting (Premium) - + Clang analyzer - + Clang-tidy @@ -1943,82 +1948,82 @@ Options: ProjectFileDialog - + Project file: %1 - + Select Cppcheck build dir - + Select include directory - + Select a directory to check - + Note: Open source Cppcheck does not fully implement Misra C 2012 - + Clang-tidy (not found) - + Visual Studio - + Compile database - + Borland C++ Builder 6 - + Import Project - + Select directory to ignore - + Source files - + All files - + Exclude file - + Select MISRA rule texts file - + MISRA rule texts file (%1) @@ -2051,7 +2056,7 @@ Options: - + (Not found) diff --git a/gui/cppcheck_sv.ts b/gui/cppcheck_sv.ts index d9d0c9af5cf..5870995c8dc 100644 --- a/gui/cppcheck_sv.ts +++ b/gui/cppcheck_sv.ts @@ -501,14 +501,14 @@ Exempel: - - - - - - - - + + + + + + + + Cppcheck Cppcheck @@ -652,14 +652,14 @@ Exempel: - + Show errors Visa fel - + Show warnings Visa varningar @@ -1086,7 +1086,7 @@ Exempel: - + Quick Filter: Snabbfilter: @@ -1174,23 +1174,23 @@ Analysis is aborted. - + License Licens - + Authors Utvecklare - + Save the report file Spara rapport - - + + XML files (*.xml) XML filer (*.xml) @@ -1248,35 +1248,35 @@ En trolig orsak är att inställningarna ändrats för olika Cppcheck versioner. Misslyckades att ladda %1. Din Cppcheck installation är ej komplett. Du kan använda --data-dir<directory> på kommandoraden för att specificera var denna fil finns. Det är meningen att --data-dir kommandot skall köras under installationen,så GUIt kommer ej visas när --data-dir används allt som händer är att en inställning görs. - + Open the report file Öppna rapportfilen - + Text files (*.txt) Text filer (*.txt) - + CSV files (*.csv) CSV filer (*.csv) - + Project files (*.cppcheck);;All files(*.*) Projektfiler (*.cppcheck);;Alla filer(*.*) - + Select Project File Välj projektfil - - - + + + Project: Projekt: @@ -1330,7 +1330,7 @@ Do you want to proceed analysis without using any of these project files? - + Current results will be cleared. Opening a new XML file will clear current results. @@ -1338,7 +1338,7 @@ Do you want to proceed? - + Analyzer is running. Do you want to stop the analysis and exit Cppcheck? @@ -1347,109 +1347,109 @@ Do you want to stop the analysis and exit Cppcheck? Vill du stoppa analysen och avsluta Cppcheck? - + About - + XML files (*.xml);;Text files (*.txt);;CSV files (*.csv) XML filer (*.xml);;Text filer (*.txt);;CSV filer (*.csv) - + Cannot generate a compliance report right now, an analysis must finish successfully. Try to reanalyze the code and ensure there are no critical errors. - + Build dir '%1' does not exist, create it? Build dir '%1' existerar ej, skapa den? - + To check the project using addons, you need a build directory. - + Failed to open file - + Unknown project file format - + Failed to import project file - + Failed to import '%1': %2 Analysis is stopped. - + Failed to import '%1' (%2), analysis is stopped - + Show Mandatory - + Show Required - + Show Advisory - + Show Document - + Show L1 - + Show L2 - + Show L3 - + Show style - + Show portability - + Show performance - + Show information @@ -1458,22 +1458,22 @@ Analysis is stopped. Misslyckades att importera '%1', analysen stoppas - + Project files (*.cppcheck) Projekt filer (*.cppcheck) - + Select Project Filename Välj Projektfil - + No project file loaded Inget projekt laddat - + The project file %1 @@ -1490,12 +1490,12 @@ Do you want to remove the file from the recently used projects -list? Vill du ta bort filen från 'senast använda projekt'-listan? - + Install - + New version available: %1. %2 @@ -1644,7 +1644,7 @@ Options: Obs: Lägg dina egna .cfg filer i samma folder som projekt filen. De skall isåfall visas ovan. - + ... ... @@ -1803,42 +1803,47 @@ Options: - + 2023 - + + 2025 + + + + MISRA rule texts - + <html><head/><body><p>Copy/paste the text from Appendix A &quot;Summary of guidelines&quot; from the MISRA C 2012 pdf to a text file.</p></body></html> - + Misra C++ - + 2008 - + Cert C++ - + Bug hunting (Premium) - + External tools @@ -1961,32 +1966,32 @@ Options: Kodstandarder - + Cert C - + CERT-INT35-C: int precision (if size equals precision, you can leave empty) - + Autosar - + Bug hunting - + Clang analyzer Clang analyzer - + Clang-tidy Clang-tidy @@ -1999,82 +2004,82 @@ Options: ProjectFileDialog - + Project file: %1 Projektfil: %1 - + Note: Open source Cppcheck does not fully implement Misra C 2012 - + Clang-tidy (not found) - + Select Cppcheck build dir Välj Cppcheck build dir - + Select include directory Välj include sökväg - + Source files - + All files - + Exclude file - + Select MISRA rule texts file - + MISRA rule texts file (%1) - + Select a directory to check Välj mapp att analysera - + Visual Studio Visual Studio - + Compile database - + Borland C++ Builder 6 - + Import Project Importera Projekt - + Select directory to ignore Välj sökväg att ignorera @@ -2109,7 +2114,7 @@ Options: - + (Not found) diff --git a/gui/cppcheck_zh_CN.ts b/gui/cppcheck_zh_CN.ts index aa3616f7111..89dc88d38a1 100644 --- a/gui/cppcheck_zh_CN.ts +++ b/gui/cppcheck_zh_CN.ts @@ -502,14 +502,14 @@ Parameters: -l(line) (file) - - - - - - - - + + + + + + + + Cppcheck Cppcheck @@ -664,7 +664,7 @@ Parameters: -l(line) (file) - + Show errors 显示错误 @@ -777,7 +777,7 @@ Parameters: -l(line) (file) - + Show warnings 显示警告 @@ -1100,7 +1100,7 @@ This is probably because the settings were changed between the Cppcheck versions - + Quick Filter: 快速滤器: @@ -1190,98 +1190,98 @@ Do you want to load this project file instead? 加载 %1 失败。您的 Cppcheck 安装已损坏。您可以在命令行添加 --data-dir=<目录> 参数来指定文件位置。请注意,'--data-dir' 参数应当由安装脚本使用,因此,当使用此参数时,GUI不会启动,所发生的一切只是配置了设置。 - - + + XML files (*.xml) XML 文件(*.xml) - + Open the report file 打开报告文件 - + License 许可证 - + Authors 作者 - + Save the report file 保存报告文件 - + Text files (*.txt) 文本文件(*.txt) - + CSV files (*.csv) CSV 文件(*.csv) - + Cannot generate a compliance report right now, an analysis must finish successfully. Try to reanalyze the code and ensure there are no critical errors. - + Project files (*.cppcheck);;All files(*.*) 项目文件(*.cppcheck);;所有文件(*.*) - + Select Project File 选择项目文件 - + Failed to open file - + Unknown project file format - + Failed to import project file - + Failed to import '%1': %2 Analysis is stopped. - + Failed to import '%1' (%2), analysis is stopped - + Install - + New version available: %1. %2 - - - + + + Project: 项目: @@ -1372,7 +1372,7 @@ Analysis is aborted. - + Current results will be cleared. Opening a new XML file will clear current results. @@ -1383,7 +1383,7 @@ Do you want to proceed? 你想继续吗? - + Analyzer is running. Do you want to stop the analysis and exit Cppcheck? @@ -1392,77 +1392,77 @@ Do you want to stop the analysis and exit Cppcheck? 您想停止分析并退出 Cppcheck 吗? - + About - + XML files (*.xml);;Text files (*.txt);;CSV files (*.csv) XML 文件 (*.xml);;文本文件 (*.txt);;CSV 文件 (*.csv) - + Build dir '%1' does not exist, create it? 构建文件夹 '%1' 不能存在,创建它吗? - + To check the project using addons, you need a build directory. 要使用插件检查项目,您需要一个构建目录。 - + Show Mandatory - + Show Required - + Show Advisory - + Show Document - + Show L1 - + Show L2 - + Show L3 - + Show style - + Show portability - + Show performance - + Show information @@ -1471,22 +1471,22 @@ Do you want to stop the analysis and exit Cppcheck? 导入 '%1' 失败,分析已停止 - + Project files (*.cppcheck) 项目文件 (*.cppcheck) - + Select Project Filename 选择项目文件名 - + No project file loaded 项目文件未加载 - + The project file %1 @@ -1670,17 +1670,17 @@ Options: MISRA C 2012 - + MISRA rule texts MISRA 规则文本 - + <html><head/><body><p>Copy/paste the text from Appendix A &quot;Summary of guidelines&quot; from the MISRA C 2012 pdf to a text file.</p></body></html> <html><head/><body><p>从 MISRA C 2012 PDF 的附录 A &quot;指南摘要&quot; 复制/粘贴文本到一个文本文件。</p></body></html> - + ... ... @@ -1825,37 +1825,42 @@ Options: 启用内联方案 - + + 2025 + + + + Misra C++ - + 2008 - + Cert C - + CERT-INT35-C: int precision (if size equals precision, you can leave empty) - + Autosar - + Bug hunting - + External tools 外部工具 @@ -1972,27 +1977,27 @@ Options: - + 2023 - + Cert C++ - + Bug hunting (Premium) - + Clang analyzer Clang analyzer - + Clang-tidy Clang-tidy @@ -2005,82 +2010,82 @@ Options: ProjectFileDialog - + Project file: %1 项目文件: %1 - + Select Cppcheck build dir 选择 Cppcheck 构建目录 - + Select include directory 选择 Include 目录 - + Select a directory to check 选择一个检查目录 - + Note: Open source Cppcheck does not fully implement Misra C 2012 - + Clang-tidy (not found) Clang-tidy (未找到) - + Visual Studio Visual Studio - + Compile database Compile database - + Borland C++ Builder 6 Borland C++ Builder 6 - + Import Project 导入项目 - + Select directory to ignore 选择忽略的目录 - + Source files 源文件 - + All files 全部文件 - + Exclude file 排除文件 - + Select MISRA rule texts file 选择 MISRA 规则文本文件 - + MISRA rule texts file (%1) MISRA 规则文本文件 (%1) @@ -2113,7 +2118,7 @@ Options: 第%1行:在 "%3" 中缺失的必选属性 "%2" - + (Not found) (未找到) diff --git a/gui/cppcheck_zh_TW.ts b/gui/cppcheck_zh_TW.ts index 746cb4d31d2..789cf21c5f7 100644 --- a/gui/cppcheck_zh_TW.ts +++ b/gui/cppcheck_zh_TW.ts @@ -480,14 +480,14 @@ Parameters: -l(line) (file) - - - - - - - - + + + + + + + + Cppcheck Cppcheck @@ -689,7 +689,7 @@ Parameters: -l(line) (file) - + Show errors 顯示錯誤 @@ -817,7 +817,7 @@ Parameters: -l(line) (file) - + Show warnings 顯示警告 @@ -1077,15 +1077,15 @@ Options: - + Quick Filter: 快速篩選: - - - + + + Project: 專案: @@ -1270,7 +1270,7 @@ Analysis is aborted. - + Current results will be cleared. Opening a new XML file will clear current results. @@ -1278,18 +1278,18 @@ Do you want to proceed? - - + + XML files (*.xml) XML 檔案 (*.xml) - + Open the report file 開啟報告檔 - + Analyzer is running. Do you want to stop the analysis and exit Cppcheck? @@ -1298,82 +1298,82 @@ Do you want to stop the analysis and exit Cppcheck? 您想停止分析並離開 Cppcheck 嗎? - + About 關於 - + License 授權 - + Authors 作者 - + XML files (*.xml);;Text files (*.txt);;CSV files (*.csv) XML 檔案 (*.xml);;文字檔 (*.txt);;CSV 檔案 (*.csv) - + Save the report file 儲存報告檔 - + Text files (*.txt) 文字檔 (*.txt) - + CSV files (*.csv) CSV 檔案 (*.csv) - + Cannot generate a compliance report right now, an analysis must finish successfully. Try to reanalyze the code and ensure there are no critical errors. - + Project files (*.cppcheck);;All files(*.*) 專案檔 (*.cppcheck);;所有檔案 (*.*) - + Select Project File 選取專案檔 - + Build dir '%1' does not exist, create it? 建置目錄 '%1' 不存在,是否建立它? - + To check the project using addons, you need a build directory. - + Failed to open file 無法開啟檔案 - + Unknown project file format 未知的專案檔格式 - + Failed to import project file 無法匯入專案檔 - + Failed to import '%1': %2 Analysis is stopped. @@ -1382,62 +1382,62 @@ Analysis is stopped. 停止分析。 - + Failed to import '%1' (%2), analysis is stopped - + Show Mandatory - + Show Required - + Show Advisory - + Show Document - + Show L1 - + Show L2 - + Show L3 - + Show style - + Show portability - + Show performance - + Show information @@ -1446,22 +1446,22 @@ Analysis is stopped. 無法匯入 '%1',停止分析 - + Project files (*.cppcheck) 專案檔 (*.cppcheck) - + Select Project Filename 選取專案檔案名稱 - + No project file loaded - + The project file %1 @@ -1478,12 +1478,12 @@ Do you want to remove the file from the recently used projects -list? 您要從最近使用的專案列表中移除該檔案嗎? - + Install 安章 - + New version available: %1. %2 可用的新版本: %1. %2 @@ -1858,17 +1858,22 @@ Do you want to remove the file from the recently used projects -list? - + 2023 - + + 2025 + + + + Misra C++ - + 2008 @@ -1877,17 +1882,17 @@ Do you want to remove the file from the recently used projects -list? Misra C 2012 - + MISRA rule texts - + <html><head/><body><p>Copy/paste the text from Appendix A &quot;Summary of guidelines&quot; from the MISRA C 2012 pdf to a text file.</p></body></html> - + ... ... @@ -1896,47 +1901,47 @@ Do you want to remove the file from the recently used projects -list? Misra C++ 2008 - + Cert C - + CERT-INT35-C: int precision (if size equals precision, you can leave empty) - + Cert C++ - + Autosar - + Bug hunting (Premium) - + Bug hunting - + External tools 外部工具 - + Clang-tidy Clang-tidy - + Clang analyzer Clang 分析器 @@ -1944,82 +1949,82 @@ Do you want to remove the file from the recently used projects -list? ProjectFileDialog - + Project file: %1 專案檔: %1 - + Note: Open source Cppcheck does not fully implement Misra C 2012 - + Clang-tidy (not found) Clang-tidy (找不到) - + Select Cppcheck build dir 選取 Cppcheck 建置目錄 - + Visual Studio Visual Studio - + Compile database 編譯資料庫 - + Borland C++ Builder 6 Borland C++ Builder 6 - + Import Project 匯入專案 - + Select a directory to check 選取要檢查的目錄 - + Select include directory 選取包含目錄 - + Select directory to ignore 選取要忽略的目錄 - + Source files 來源檔 - + All files 所有檔案 - + Exclude file 排除檔案 - + Select MISRA rule texts file 選取 MISRA 規則文字檔 - + MISRA rule texts file (%1) MISRA 規則文字檔 (%1) @@ -2172,7 +2177,7 @@ Do you want to remove the file from the recently used projects -list? - + (Not found) (找不到) diff --git a/gui/mainwindow.cpp b/gui/mainwindow.cpp index 8522f3efcb5..af9dbc2a3ba 100644 --- a/gui/mainwindow.cpp +++ b/gui/mainwindow.cpp @@ -1175,7 +1175,6 @@ bool MainWindow::getCppcheckSettings(Settings& settings, Suppressions& supprs) if (!premiumArgs.contains("--misra-c-") && mProjectFile->getAddons().contains("misra")) premiumArgs += " --misra-c-2012"; settings.premiumArgs = premiumArgs.mid(1).toStdString(); - settings.setMisraRuleTexts(CheckThread::executeCommand); } } else diff --git a/gui/projectfile.ui b/gui/projectfile.ui index d2f781f27cf..3bf02f30631 100644 --- a/gui/projectfile.ui +++ b/gui/projectfile.ui @@ -846,6 +846,11 @@ 2023 + + + 2025 + + diff --git a/gui/projectfiledialog.cpp b/gui/projectfiledialog.cpp index efa63c90e83..acb6b520e21 100644 --- a/gui/projectfiledialog.cpp +++ b/gui/projectfiledialog.cpp @@ -61,6 +61,7 @@ static constexpr char ADDON_MISRA[] = "misra"; static constexpr char CODING_STANDARD_MISRA_C_2023[] = "misra-c-2023"; +static constexpr char CODING_STANDARD_MISRA_C_2025[] = "misra-c-2025"; static constexpr char CODING_STANDARD_MISRA_CPP_2008[] = "misra-cpp-2008"; static constexpr char CODING_STANDARD_MISRA_CPP_2023[] = "misra-cpp-2023"; static constexpr char CODING_STANDARD_CERT_C[] = "cert-c-2016"; @@ -396,7 +397,14 @@ void ProjectFileDialog::loadFromProjectFile(const ProjectFile *projectFile) const QString &misraFile = settings.value(SETTINGS_MISRA_FILE, QString()).toString(); mUI->mEditMisraFile->setText(misraFile); mUI->mMisraVersion->setVisible(mPremium); - mUI->mMisraVersion->setCurrentIndex(projectFile->getCodingStandards().contains(CODING_STANDARD_MISRA_C_2023)); + if (projectFile->getCodingStandards().contains(CODING_STANDARD_MISRA_C_2023)) + mUI->mMisraVersion->setCurrentIndex(1); + else if (projectFile->getCodingStandards().contains(CODING_STANDARD_MISRA_C_2025)) + mUI->mMisraVersion->setCurrentIndex(2); + else if (projectFile->getAddons().contains(ADDON_MISRA)) + mUI->mMisraVersion->setCurrentIndex(0); + else + mUI->mMisraVersion->setCurrentIndex(-1); if (mPremium) { mUI->mLabelMisraFile->setVisible(false); mUI->mEditMisraFile->setVisible(false); @@ -519,6 +527,8 @@ void ProjectFileDialog::saveToProjectFile(ProjectFile *projectFile) const codingStandards << CODING_STANDARD_CERT_CPP; if (mPremium && mUI->mMisraVersion->currentIndex() == 1) codingStandards << CODING_STANDARD_MISRA_C_2023; + if (mPremium && mUI->mMisraVersion->currentIndex() == 2) + codingStandards << CODING_STANDARD_MISRA_C_2025; if (mUI->mMisraCpp->isChecked() && mUI->mMisraCppVersion->currentIndex() == 0) codingStandards << CODING_STANDARD_MISRA_CPP_2008; if (mUI->mMisraCpp->isChecked() && mUI->mMisraCppVersion->currentIndex() == 1) diff --git a/lib/checkersidmapping.cpp b/lib/checkersidmapping.cpp index 35741f65204..5b0e6705c4c 100644 --- a/lib/checkersidmapping.cpp +++ b/lib/checkersidmapping.cpp @@ -18,7 +18,6 @@ // This file is auto generated by script, do not edit // Mappings of Cppcheck warning IDs to guidelines #include "checkers.h" - #include std::vector checkers::idMappingAutosar{ @@ -79,8 +78,10 @@ std::vector checkers::idMappingCertC{ {"EXP34", "nullPointer,nullPointerDefaultArg,nullPointerRedundantCheck,nullPointerArithmetic,nullPointerArithmeticRedundantCheck"}, {"EXP44", "sizeofCalculation"}, {"EXP46", "bitwiseOnBoolean"}, + {"INT32", "integerOverflow"}, {"FLP32", "invalidFunctionArg"}, {"FLP34", "floatConversionOverflow"}, + {"ARR30", "arrayIndexOutOfBounds,arrayIndexOutOfBoundsCond,pointerOutOfBounds,pointerOutOfBoundsCond,negativeIndex,arrayIndexThenCheck,bufferAccessOutOfBounds,objectIndex,argumentSize"}, {"ARR36", "comparePointers"}, {"STR30", "stringLiteralWrite"}, {"STR37", "invalidFunctionArg"}, @@ -95,28 +96,28 @@ std::vector checkers::idMappingCertC{ }; std::vector checkers::idMappingCertCpp{ + {"CTR51", "eraseDereference"}, + {"CTR54", "comparePointers"}, + {"CTR55", "containerOutOfBounds"}, {"DCL57", "deallocThrow,exceptThrowInDestructor"}, {"DCL60", "ctuOneDefinitionRuleViolation"}, + {"ERR57", "memleak"}, {"EXP52", "sizeofCalculation"}, - {"EXP53", "uninitvar"}, + {"EXP53", "uninitvar,uninitdata,uninitStructMember"}, {"EXP54", "uninitvar,danglingLifetime,danglingReference,danglingTemporaryLifetime,danglingTempReference,returnDanglingLifetime"}, {"EXP61", "danglingLifetime,danglingReference,danglingTemporaryLifetime,danglingTempReference,returnDanglingLifetime"}, {"EXP63", "accessMoved"}, - {"CTR51", "eraseDereference"}, - {"CTR54", "comparePointers"}, - {"CTR55", "containerOutOfBounds"}, - {"STR51", "nullPointer"}, - {"STR52", "invalidContainer"}, + {"FIO50", "IOWithoutPositioning"}, {"MEM50", "deallocuse"}, {"MEM51", "mismatchAllocDealloc"}, {"MEM56", "doubleFree"}, - {"FIO50", "IOWithoutPositioning"}, - {"ERR57", "memleak"}, + {"MSC52", "missingReturn"}, {"OOP50", "virtualCallInConstructor"}, {"OOP52", "virtualDestructor"}, {"OOP53", "initializerList"}, {"OOP54", "operatorEqToSelf"}, - {"MSC52", "missingReturn"}, + {"STR51", "nullPointer"}, + {"STR52", "invalidContainer"}, }; std::vector checkers::idMappingMisraC{ @@ -192,6 +193,7 @@ std::vector checkers::idMappingMisraCpp2023{ {"0.0.1", "unreachableCode"}, {"0.0.2", "compareBoolExpressionWithInt,compareValueOutOfTypeRangeError,identicalConditionAfterEarlyExit,identicalInnerCondition,knownConditionTrueFalse"}, {"0.1.1", "redundantAssignInSwitch,redundantAssignment,redundantCopy,redundantInitialization,unreadVariable"}, + {"Dir 0.3.1", "floatConversionOverflow"}, {"Dir 0.3.2", "invalidFunctionArg,invalidFunctionArgBool,invalidFunctionArgStr"}, {"4.1.3", "error"}, {"4.6.1", "unknownEvaluationOrder"}, diff --git a/lib/checkersreport.cpp b/lib/checkersreport.cpp index 350ca3bfe6b..998aa66fce9 100644 --- a/lib/checkersreport.cpp +++ b/lib/checkersreport.cpp @@ -35,10 +35,12 @@ static bool isCppcheckPremium(const Settings& settings) { } static int getMisraCVersion(const Settings& settings) { - if (settings.premiumArgs.find("misra-c-2012") != std::string::npos) - return 2012; + if (settings.premiumArgs.find("misra-c-2025") != std::string::npos) + return 2025; if (settings.premiumArgs.find("misra-c-2023") != std::string::npos) return 2023; + if (settings.premiumArgs.find("misra-c-2012") != std::string::npos) + return 2012; if (settings.addons.count("misra")) return 2012; const bool misraAddonInfo = std::any_of(settings.addonInfos.cbegin(), settings.addonInfos.cend(), [](const AddonInfo& addonInfo) { diff --git a/lib/cppcheck.cpp b/lib/cppcheck.cpp index 79448429ede..4c30f31a7a7 100644 --- a/lib/cppcheck.cpp +++ b/lib/cppcheck.cpp @@ -1732,8 +1732,6 @@ void CppCheck::executeAddons(const std::vector& files, const std::s mErrorLogger.reportErr(errmsg); } - const bool misraC2023 = mSettings.premiumArgs.find("--misra-c-2023") != std::string::npos; - for (const picojson::value& res : results) { // TODO: get rid of copy? // this is a copy so we can access missing fields and get a default value @@ -1789,9 +1787,7 @@ void CppCheck::executeAddons(const std::vector& files, const std::s } errmsg.id = obj["addon"].get() + "-" + obj["errorId"].get(); - if (misraC2023 && startsWith(errmsg.id, "misra-c2012-")) - errmsg.id = "misra-c2023-" + errmsg.id.substr(12); - errmsg.setmsg(mSettings.getMisraRuleText(errmsg.id, obj["message"].get())); + errmsg.setmsg(obj["message"].get()); const std::string severity = obj["severity"].get(); errmsg.severity = severityFromString(severity); if (errmsg.severity == Severity::none || errmsg.severity == Severity::internal) { @@ -2122,10 +2118,8 @@ void CppCheck::printTimerResults(SHOWTIME_MODES mode) } bool CppCheck::isPremiumCodingStandardId(const std::string& id) const { - if (mSettings.premiumArgs.find("--misra") != std::string::npos) { - if (startsWith(id, "misra-") || startsWith(id, "premium-misra-")) - return true; - } + if (mSettings.premiumArgs.find("--misra") != std::string::npos && startsWith(id, "premium-misra-")) + return true; if (mSettings.premiumArgs.find("--cert") != std::string::npos && startsWith(id, "premium-cert-")) return true; if (mSettings.premiumArgs.find("--autosar") != std::string::npos && startsWith(id, "premium-autosar-")) diff --git a/lib/settings.cpp b/lib/settings.cpp index 97c7457d49c..64a9f9df6bf 100644 --- a/lib/settings.cpp +++ b/lib/settings.cpp @@ -392,15 +392,21 @@ static const std::set autosarCheckers{ static const std::set certCCheckers{ "IOWithoutPositioning", + "argumentSize", + "arrayIndexOutOfBounds", + "arrayIndexOutOfBoundsCond", + "arrayIndexThenCheck", "autoVariables", "autovarInvalidDeallocation", "bitwiseOnBoolean", + "bufferAccessOutOfBounds", "comparePointers", "danglingLifetime", "deallocret", "deallocuse", "doubleFree", "floatConversionOverflow", + "integerOverflow", "invalidFunctionArg", "invalidLengthModifierError", "invalidLifetime", @@ -412,11 +418,15 @@ static const std::set certCCheckers{ "memleakOnRealloc", "mismatchAllocDealloc", "missingReturn", + "negativeIndex", "nullPointer", "nullPointerArithmetic", "nullPointerArithmeticRedundantCheck", "nullPointerDefaultArg", "nullPointerRedundantCheck", + "objectIndex", + "pointerOutOfBounds", + "pointerOutOfBoundsCond", "preprocessorErrorDirective", "resourceLeak", "returnDanglingLifetime", @@ -455,6 +465,8 @@ static const std::set certCppCheckers{ "operatorEqToSelf", "returnDanglingLifetime", "sizeofCalculation", + "uninitStructMember", + "uninitdata", "uninitvar", "virtualCallInConstructor", "virtualDestructor" @@ -546,6 +558,49 @@ static const std::set misrac2023Checkers{ "writeReadOnlyFile" }; +static const std::set misrac2025Checkers{ + "argumentSize", + "autovarInvalidDeallocation", + "bufferAccessOutOfBounds", + "comparePointers", + "compareValueOutOfTypeRangeError", + "constParameterPointer", + "constStatement", + "danglingLifetime", + "danglingTemporaryLifetime", + "duplicateBreak", + "funcArgNamesDifferent", + "incompatibleFileOpen", + "invalidFunctionArg", + "knownConditionTrueFalse", + "leakNoVarFunctionCall", + "leakReturnValNotUsed", + "memleak", + "memleakOnRealloc", + "missingReturn", + "overlappingWriteFunction", + "overlappingWriteUnion", + "pointerOutOfBounds", + "preprocessorErrorDirective", + "redundantAssignInSwitch", + "redundantAssignment", + "redundantCondition", + "resourceLeak", + "returnDanglingLifetime", + "shadowVariable", + "sizeofCalculation", + "sizeofwithsilentarraypointer", + "syntaxError", + "uninitvar", + "unknownEvaluationOrder", + "unreachableCode", + "unreadVariable", + "unusedLabel", + "unusedVariable", + "useClosedFile", + "writeReadOnlyFile" +}; + static const std::set misracpp2008Checkers{ "autoVariables", "comparePointers", @@ -602,6 +657,7 @@ static const std::set misracpp2023Checkers{ "constParameterReference", "ctuOneDefinitionRuleViolation", "danglingLifetime", + "floatConversionOverflow", "identicalConditionAfterEarlyExit", "identicalInnerCondition", "ignoredReturnValue", @@ -639,7 +695,7 @@ bool Settings::isPremiumEnabled(const char id[]) const return true; if (premiumArgs.find("cert-c++") != std::string::npos && certCppCheckers.count(id)) return true; - if (premiumArgs.find("misra-c-") != std::string::npos && (misrac2012Checkers.count(id) || misrac2023Checkers.count(id))) + if (premiumArgs.find("misra-c-") != std::string::npos && (misrac2012Checkers.count(id) || misrac2023Checkers.count(id) || misrac2025Checkers.count(id))) return true; if (premiumArgs.find("misra-c++-2008") != std::string::npos && misracpp2008Checkers.count(id)) return true; @@ -648,51 +704,6 @@ bool Settings::isPremiumEnabled(const char id[]) const return false; } -void Settings::setMisraRuleTexts(const ExecuteCmdFn& executeCommand) -{ - if (premiumArgs.find("--misra-c-20") != std::string::npos) { - const auto it = std::find_if(addonInfos.cbegin(), addonInfos.cend(), [](const AddonInfo& a) { - return a.name == "premiumaddon.json"; - }); - if (it != addonInfos.cend()) { - std::string arg; - if (premiumArgs.find("--misra-c-2023") != std::string::npos) - arg = "--misra-c-2023-rule-texts"; - else - arg = "--misra-c-2012-rule-texts"; - std::string output; - executeCommand(it->executable, {std::move(arg)}, "2>&1", output); - setMisraRuleTexts(output); - } - } -} - -void Settings::setMisraRuleTexts(const std::string& data) -{ - mMisraRuleTexts.clear(); - std::istringstream istr(data); - std::string line; - while (std::getline(istr, line)) { - std::string::size_type pos = line.find(' '); - if (pos == std::string::npos) - continue; - std::string id = line.substr(0, pos); - std::string text = line.substr(pos + 1); - if (id.empty() || text.empty()) - continue; - if (text[text.size() -1] == '\r') - text.erase(text.size() -1); - mMisraRuleTexts[id] = std::move(text); - } -} - -std::string Settings::getMisraRuleText(const std::string& id, const std::string& text) const { - if (id.compare(0, 9, "misra-c20") != 0) - return text; - const auto it = mMisraRuleTexts.find(id.substr(id.rfind('-') + 1)); - return it != mMisraRuleTexts.end() ? it->second : text; -} - Settings::ExecutorType Settings::defaultExecutor() { static constexpr ExecutorType defaultExecutor = diff --git a/lib/settings.h b/lib/settings.h index 7e9be6c6a40..f01614d6911 100644 --- a/lib/settings.h +++ b/lib/settings.h @@ -543,17 +543,12 @@ class CPPCHECKLIB WARN_UNUSED Settings { void setCheckLevel(CheckLevel level); - using ExecuteCmdFn = std::function,std::string,std::string&)>; - void setMisraRuleTexts(const ExecuteCmdFn& executeCommand); - void setMisraRuleTexts(const std::string& data); - std::string getMisraRuleText(const std::string& id, const std::string& text) const; static ExecutorType defaultExecutor(); private: static std::string parseEnabled(const std::string &str, std::tuple, SimpleEnableGroup> &groups); std::string applyEnabled(const std::string &str, bool enable); - std::map mMisraRuleTexts; }; /// @} diff --git a/test/testcppcheck.cpp b/test/testcppcheck.cpp index a5b2b83e9f1..837fc6d4ee1 100644 --- a/test/testcppcheck.cpp +++ b/test/testcppcheck.cpp @@ -262,10 +262,12 @@ class TestCppcheck : public TestFixture { ASSERT_EQUALS(false, cppcheck.isPremiumCodingStandardId("misra-c2012-0.0")); ASSERT_EQUALS(false, cppcheck.isPremiumCodingStandardId("misra-c2023-0.0")); - ASSERT_EQUALS(false, cppcheck.isPremiumCodingStandardId("premium-misra-c2012-0.0")); - ASSERT_EQUALS(false, cppcheck.isPremiumCodingStandardId("premium-misra-c2023-0.0")); - ASSERT_EQUALS(false, cppcheck.isPremiumCodingStandardId("premium-misra-c++2008-0.0.0")); - ASSERT_EQUALS(false, cppcheck.isPremiumCodingStandardId("premium-misra-c++2023-0.0.0")); + ASSERT_EQUALS(false, cppcheck.isPremiumCodingStandardId("premium-misra-c-2012-0.0")); + ASSERT_EQUALS(false, cppcheck.isPremiumCodingStandardId("premium-misra-c-2023-0.0")); + ASSERT_EQUALS(false, cppcheck.isPremiumCodingStandardId("premium-misra-c-2025-0.0")); + ASSERT_EQUALS(false, cppcheck.isPremiumCodingStandardId("premium-misra-c-2025-dir-0.0")); + ASSERT_EQUALS(false, cppcheck.isPremiumCodingStandardId("premium-misra-c++-2008-0-0-0")); + ASSERT_EQUALS(false, cppcheck.isPremiumCodingStandardId("premium-misra-c++-2023-0.0.0")); ASSERT_EQUALS(false, cppcheck.isPremiumCodingStandardId("premium-cert-int50-cpp")); ASSERT_EQUALS(false, cppcheck.isPremiumCodingStandardId("premium-autosar-0-0-0")); } @@ -275,12 +277,13 @@ class TestCppcheck : public TestFixture { CppCheck cppcheck(s, supprs, errorLogger, false, {}); - ASSERT_EQUALS(true, cppcheck.isPremiumCodingStandardId("misra-c2012-0.0")); - ASSERT_EQUALS(true, cppcheck.isPremiumCodingStandardId("misra-c2023-0.0")); - ASSERT_EQUALS(true, cppcheck.isPremiumCodingStandardId("premium-misra-c2012-0.0")); - ASSERT_EQUALS(true, cppcheck.isPremiumCodingStandardId("premium-misra-c2023-0.0")); - ASSERT_EQUALS(true, cppcheck.isPremiumCodingStandardId("premium-misra-c++2008-0.0.0")); - ASSERT_EQUALS(true, cppcheck.isPremiumCodingStandardId("premium-misra-c++2023-0.0.0")); + ASSERT_EQUALS(false, cppcheck.isPremiumCodingStandardId("misra-c2012-0.0")); + ASSERT_EQUALS(true, cppcheck.isPremiumCodingStandardId("premium-misra-c-2012-0.0")); + ASSERT_EQUALS(true, cppcheck.isPremiumCodingStandardId("premium-misra-c-2023-0.0")); + ASSERT_EQUALS(true, cppcheck.isPremiumCodingStandardId("premium-misra-c-2025-0.0")); + ASSERT_EQUALS(true, cppcheck.isPremiumCodingStandardId("premium-misra-c-2025-dir-0.0")); + ASSERT_EQUALS(true, cppcheck.isPremiumCodingStandardId("premium-misra-c++-2008-0-0-0")); + ASSERT_EQUALS(true, cppcheck.isPremiumCodingStandardId("premium-misra-c++-2023-0.0.0")); ASSERT_EQUALS(true, cppcheck.isPremiumCodingStandardId("premium-cert-int50-cpp")); ASSERT_EQUALS(true, cppcheck.isPremiumCodingStandardId("premium-autosar-0-0-0")); } diff --git a/test/testsettings.cpp b/test/testsettings.cpp index d8a501dc866..f4b5916fae9 100644 --- a/test/testsettings.cpp +++ b/test/testsettings.cpp @@ -33,7 +33,6 @@ class TestSettings : public TestFixture { TEST_CASE(loadCppcheckCfg); TEST_CASE(loadCppcheckCfgSafety); TEST_CASE(getNameAndVersion); - TEST_CASE(ruleTexts); TEST_CASE(checkLevelDefault); } @@ -279,15 +278,6 @@ class TestSettings : public TestFixture { } } - void ruleTexts() const - { - Settings s; - s.setMisraRuleTexts("1.1 text 1\n1.2 text 2\n1.3 text 3\r\n"); - ASSERT_EQUALS("text 1", s.getMisraRuleText("misra-c2012-1.1", "---")); - ASSERT_EQUALS("text 2", s.getMisraRuleText("misra-c2012-1.2", "---")); - ASSERT_EQUALS("text 3", s.getMisraRuleText("misra-c2012-1.3", "---")); - } - void checkLevelDefault() const { Settings s;