GoGPT Best VPN GoSearch

OnWorks-Favicon

spatch - Online in der Cloud

Führen Sie spatch im kostenlosen Hosting-Anbieter OnWorks über Ubuntu Online, Fedora Online, den Windows-Online-Emulator oder den MAC OS-Online-Emulator aus

Dies ist der Befehls-Spatch, der beim kostenlosen Hosting-Anbieter OnWorks mit einer unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, dem Windows-Online-Emulator oder dem MAC OS-Online-Emulator ausgeführt werden kann

PROGRAMM:

NAME/FUNKTION


spatch – wendet eine semantische Patch-Datei auf eine Reihe von C-Dateien an

ZUSAMMENFASSUNG


Fleck --sp-Datei [-oder ] [--iso-datei ] [ Optionen ]

BESCHREIBUNG


Fleck ist ein Programmabgleichs- und Transformationstool für C. Der Programmierer beschreibt das
Code zum Abgleichen und die Transformation, die als semantischer Patch ausgeführt werden soll, der wie folgt aussieht
Standard-Patch, kann aber mehrere Dateien an beliebig vielen Code-Sites umwandeln.

Weitere Informationen zu Spatch finden Sie unter http://coccinelle.lip6.fr/.

Beispiele für semantische Patches finden Sie unter http://coccinellery.org/und im
Skripte/Coccinelle Verzeichnis des Linux-Kernel-Quellcodes.

OPTIONAL


Hier ist eine Zusammenfassung der am häufigsten verwendeten Optionen:

--sp-Datei
die semantische Patchdatei

--dir
Verarbeiten Sie alle Dateien im Verzeichnis rekursiv

--iso-Datei
(Standard=@SHAREDIR@/standard.iso)

--macro-datei
(Standard=@SHAREDIR@/standard.h)

--debuggen
Drucken Sie einige Informationen aus, die beim Debuggen des Matching-Prozesses helfen

--all-includes
bewirkt, dass alle verfügbaren Include-Dateien verwendet werden

--no-includes
bewirkt, dass nicht einmal lokale Include-Dateien verwendet werden

-I
das Verzeichnis, das die Include-Dateien enthält

--include-header
Header-Dateien unabhängig verarbeiten

--use-glimpse
funktioniert mit --dir, verwendet von glimpseindex generierte Informationen

-o
die Ausgabedatei. Wenn keine angegeben wird, wird ein Patch auf der Standardausgabe generiert

--an Ort und Stelle
Nehmen Sie die Änderung direkt an der Datei vor

--out-place
Speichern Sie Änderungen in einer .cocci_res-Datei

--Version
Zeigt die Version von Spatch an

--Datum Zeigt das Datum an, an dem Spatch kompiliert wurde

--shorthelp
siehe kurze Liste der Optionen

- lange Hilfe
Sehen Sie sich alle verfügbaren Optionen in verschiedenen Kategorien an

-Hilfe, --help
Zusammenfassung der Optionen anzeigen.

Beispiele:


./spatch --sp-file foo.cocci foo.c

Wenden Sie den semantischen Patch foo.cocci auf die C-Datei foo.c an. Der semantische Patch wird angewendet
modulo eine Reihe von Isomorphismen, die in standard.iso enthalten sind (standard.iso befindet sich standardmäßig).
in @SHAREDIR@/standard.iso). Ein Patch, der die Wirkung der Anwendung (falls vorhanden) zeigt, wird dies tun
auf der Standardausgabe generiert werden.

./spatch --sp-file foo.cocci foo.c -o /tmp/newfoo.c

Dasselbe wie oben, außer dass eine modifizierte Version von foo.c in /tmp/newfoo.c gespeichert ist.

Es ist auch möglich, Spatch auf alle C-Dateien in einem Verzeichnis anzuwenden:

./spatch --cocci-file foo.cocci --dir foodir

Wenn der semantische Patch nicht wie erwartet funktioniert, zeigt die Option --debug die Auswahl an
Informationen über die Anwendung eines semantischen Patches auf eine Datei oder ein Verzeichnis.

MEHR ERFAHREN OPTIONAL


HAUPTOPTIONEN

--sp-Datei
die semantische Patchdatei

-o die Ausgabedatei

--an Ort und Stelle
Nehmen Sie die Änderung direkt an der Datei vor

--backup-suffix
Suffix, das beim Erstellen einer Inplace-Sicherung verwendet werden soll

--out-place
Speichern Sie Änderungen in einer .cocci_res-Datei

--umkehren
Invertieren Sie den semantischen Patch, bevor Sie ihn anwenden

-U Anzahl der Diff-Kontextzeilen festlegen

--partial-match
Teilübereinstimmungen des SP in der C-Datei melden

--iso-Datei
(Standard=/usr/local/lib/coccinelle/standard.iso)

--macro-datei


--macro-file-builtins
(Standard=/usr/local/lib/coccinelle/standard.h)

--recursive-includes
bewirkt, dass alle verfügbaren Include-Dateien, sowohl die in der/den C-Datei(en) enthaltenen als auch die
in Header-Dateien enthalten, zur Verwendung

--all-includes
bewirkt, dass alle verfügbaren Include-Dateien verwendet werden, die in der/den C-Datei(en) enthalten sind

--no-includes
bewirkt, dass nicht einmal lokale Include-Dateien verwendet werden

--local-includes
bewirkt, dass lokale Include-Dateien verwendet werden

--ignore-unknown-options
Zur Integration in eine Toolchain (muss vor der ersten unbekannten Option gesetzt werden)

--include-header
Header-Dateien unabhängig verarbeiten

-I Enthält die Header-Dateien (optional)

--vorverarbeiten
Führen Sie den C-Präprozessor aus, bevor Sie die semantische Übereinstimmung anwenden

-c gcc/cpp-Kompatibilitätsmodus

--dir Verarbeiten Sie alle Dateien im Verzeichnis rekursiv

--use-glimpse
arbeitet mit --dir, verwenden Sie von glimpseindex generierte Informationen

--benutze Google
Finden Sie relevante Dateien mithilfe der Google-Codesuche

--use-idutils
Finden Sie relevante Dateien mit id-utils

- Patch
Pfadname, für den ein Patch erstellt werden soll

„“ für eine Datei im aktuellen Verzeichnis

--kbuild-info
verbessern --dir durch Gruppieren verwandter C-Dateien

--pyoutput
Legt die Ausgaberoutine fest: Standardwerte:

--Version
rate mal was

--Datum rate mal was

--shorthelp
siehe kurze Liste der Optionen

- lange Hilfe
Sehen Sie sich alle verfügbaren Optionen in verschiedenen Kategorien an

Aliase und veraltete Optionen

--sp Befehlszeilen-Semantik-Patch

- iso kurze Option von --iso-Datei

--cocci-Datei
die semantische Patchdatei

NÜTZLICHSTE SHOW-OPTIONEN

--show-diff

--no-show-diff

--force-diffshow
diff, auch wenn sich nur der Abstand ändert

--show-flow

--ctl-inline-let

--ctl-show-mcodekind

--show-bindings

--show-transinfo

--show-misc

--show-trying
Zeigt den Namen jeder verarbeiteten Funktion an

--show-dependencies
Zeigt die mit jeder Regel verbundenen Abhängigkeiten an

AUSFÜHRLICHE SUBSYSTEMOPTIONEN

--verbose-ctl-engine

--verbose-match

--verbose-engine

--graphical-trace
Generieren Sie eine PDF-Datei, die den Matching-Prozess darstellt

--gt-without-label
Grafikbeschriftung entfernen (Option erforderlich). -grafische-trace)

--parse-error-msg

--verbose-parsing

--type-error-msg

WEITERE SHOW-OPTIONEN

--show-c

--show-cocci

--show-before-fixed-flow

--show-ctl-tex

--show-ctl-text

--show-SP

DEBUG C PARSING/UNPARSING

--debug-cpp

--debug-lexer

--debug-etdt

--debug-typedef

--filter-msg
Filtern Sie einige CPP-Nachrichten, wenn das Makro ein „bekanntes“ CPP-Konstrukt ist

--filter-define-error

--filter-msg-define-error
Filtern Sie die Fehlermeldung

--filter-passed-level

--debug-unparsing

VERKÜRZUNG ZUM SOFORTIGEN AKTIVIEREN/DEAKTIVIEREN EINER REIHE VON Debugging-Optionen

--ruhig

--sehr ruhig

--debuggen

--Pad

BANKOPTIONEN

--Profil
Sammeln Sie Zeitinformationen über die wichtigsten Coccinelle-Funktionen

--Bank
zur Profilierung der CTL-Engine

--Auszeit
Timeout in Sekunden

--Schritte
Maximale Anzahl von Modellprüfungsschritten pro Codeeinheit

--iso-limit
Maximale Tiefe der ISO-Anwendung

--no-iso-limit
Deaktivieren Sie die Begrenzung der maximalen Tiefe der ISO-Anwendung

--track-iso
Sammeln Sie Informationen über die Verwendung von Isomorphismus

--disable-iso
Deaktivieren Sie einen bestimmten Isomorphismus

--profile-iso
Sammeln Sie Informationen über die Kosten der Isomorphismusnutzung

ÄNDERUNG DER ALGORITHMUSOPTIONEN

--keep-comments
Behalten Sie Kommentare zu entferntem Code bei

--Schleife

--no-loops
Alle aus Schleifenkonstrukten abgeleiteten Hinterkanten löschen – unsicher

--no-gotos
Alle von Gotos abgeleiteten Sprünge fallen lassen - unsicher

--no-saved-typedefs
Löschen Sie alle abgeleiteten Typdefinitionen von einer Analyse eines Codes zur nächsten

--ocaml-regexps
Verwenden Sie reguläre OCaml Str-Ausdrücke für Einschränkungen

--l1

--ifdef-to-if
ifdef in if konvertieren (experimentell)

--no-ifdef-to-if
ifdef in if konvertieren (experimentell)

--disable-multi-pass

--noif0-passing

--definiert

--nicht definiert

--noadd-typedef-root

--disallow-nested-exps
Verhindern Sie, dass ein Ausdrucksmuster einen Begriff und seinen Unterbegriff abgleicht

--disable-worthy-trying-opt

--only-return-is-error-exitif Wenn dieses Flag nicht gesetzt ist, sind „Break“ und „Fortfahren“ ebenfalls Fehler
Ausgänge

--allow-inconsistent-paths
Wenn dieses Flag gesetzt ist, prüfen Sie nicht, ob inkonsistente Pfade vorhanden sind. gefährlich

--no-safe-expressions
Machen Sie einen Ausdruck zu einer Disjunktion und priorisieren Sie nicht die oberste Disjunktion

--int-bits
die Anzahl der Bits in einem vorzeichenlosen int

--long-bits
die Anzahl der Bits in einem unsigned long

--linux-spacing
Der Abstand von +-Code folgt den Konventionen von Linux

--smpl-spacing
Der Abstand von + Code folgt dem semantischen Patch

-D geben an, dass eine virtuelle Regel als erfüllt betrachtet werden sollte

--C++ Machen Sie einen kleinen Versuch, C++-Dateien zu analysieren. Die unterstützten Erweiterungen für Quelldateien
sind .cpp, .cxx, .cc und für Header-Dateien sind .h, .hpp und .hxx. Beachten Sie, dass dies
Option deaktiviert die Verarbeitung von .c-Dateien, da das Verhalten von Coccinelle anders ist
C ++.

VERSCHIEDENE OPTIONEN

- Debugger
Option zum Festlegen, ob Spatch in ocamldebug gestartet wird

--disable-once
um weitere Nachrichten zu drucken

--show-trace-profile
Spur zeigen

--save-tmp-files

GLEICHZEITIGKEIT

--Index
Der Prozessor, der für diesen Spatch-Lauf verwendet werden soll

--max die Anzahl der verfügbaren Prozessoren

--mod-distrib
Verwenden Sie Mod, um Dateien auf die Prozessoren zu verteilen

PAD-OPTIONEN

--Cache verwenden
Verwenden Sie die vorab analysierte zwischengespeicherte C-Datei .ast_raw

--cache-Präfix
Verzeichnis der zwischengespeicherten ASTs, Sätze --Cache verwenden

--cache-limit
maximale Anzahl zwischengespeicherter ASTs, Sätze --Cache verwenden

TESTMODUS UND TESTOPTIONEN (FUNKTIONIERT MIT TESTS/ ODER .OK-DATEIEN)
Die Testoptionen funktionieren nicht mit dem --sp-Datei und so weiter.

--Prüfung Spatch für Tests/Datei starten.[c,cocci]

--testall
Starten Sie Spatch für alle Dateien in Tests/mit einer .res

--test-okfailed
generiert .{ok,failed,spatch_ok}-Dateien mithilfe von .res-Dateien

--test-regression-okfailed
Verarbeiten Sie die .{ok,failed,spatch_ok}-Dateien im aktuellen Verzeichnis

--compare-with-expected
Verwenden Sie auch file.res

--expected-score-file
mit welcher Partiturdatei verglichen werden soll --testall

--no-update-score-file
Aktualisieren Sie die Partiturdatei nicht, wenn --testall gelingt

--relax-include-path

AKTIONSMODUS
Die Aktionsoptionen funktionieren nicht mit dem --sp-Datei und so weiter. Es ist für den anderen
(interne) Verwendungen des Spatch-Programms.

--tokens-c


--parse-c


--parse-h


--parse-ch


--parse-i


--parsen


--show-flow


--control-flow


--control-flow-to-file


--test-cfg-ifdef


--parse-unparse


--type-c


--compare-c


--comment-annotator-c


--compare-c-hardcoded

--test-attributes


--test-cpp


--extract-macros


--extract-macros-select


--xxx <>

--parse-cocci


--compare-c


Verwenden Sie Spatch online über die Dienste von onworks.net


Kostenlose Server & Workstations

Laden Sie Windows- und Linux-Apps herunter

Linux-Befehle

Ad




×
Werbung
❤ ️Hier einkaufen, buchen oder kaufen – kostenlos, damit die Dienste kostenlos bleiben.