Il s'agit de la commande ocamlc qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS
PROGRAMME:
Nom
ocamlc - Le compilateur de bytecode OCaml
SYNOPSIS
ocamlc [ Options ] nom de fichier ...
ocamlc.opt [ Options ] nom de fichier ...
DESCRIPTION
Le compilateur de bytecode OCaml ocamlc(1) compile les fichiers source OCaml en fichiers objet bytecode
et lie ces fichiers objets pour produire des fichiers exécutables de bytecode autonomes. Ces
les fichiers exécutables sont ensuite exécutés par l'interpréteur de bytecode ocamlrun (1).
Le site de ocamlc(1) a une interface de ligne de commande similaire à celle de la plupart des compilateurs C.
Il accepte plusieurs types d'arguments et les traite séquentiellement :
Les arguments se terminant par .mli sont considérés comme des fichiers source pour les interfaces des unités de compilation.
Les interfaces précisent les noms exportés par les unités de compilation : elles déclarent des noms de valeurs avec
leurs types, définir des types de données publics, déclarer des types de données abstraits, etc. Du
filet x.mli, le ocamlc(1) le compilateur produit une interface compilée dans le fichier x.cmi.
Les arguments se terminant par .ml sont considérés comme des fichiers source pour les implémentations d'unités de compilation.
Les implémentations fournissent des définitions pour les noms exportés par l'unité, et contiennent également
expressions à évaluer pour leurs effets secondaires. A partir du fichier x.ml, le ocamlc(1)
le compilateur produit le bytecode de l'objet compilé dans le fichier x.cmo.
Si le fichier d'interface x.mli existe, l'implémentation x.ml est vérifié par rapport au
interface compilée correspondante x.cmi, qui est supposé exister. Si pas d'interface x.mli
est fourni, la compilation de x.ml produit un fichier d'interface compilé x.cmi en plus
au fichier de code objet compilé x.cmo. Le fichier x.cmi produit correspond à un
interface qui exporte tout ce qui est défini dans l'implémentation x.ml.
Les arguments se terminant par .cmo sont considérés comme du bytecode de l'objet compilé. Ces fichiers sont liés
ensemble, avec les fichiers objets obtenus en compilant les arguments .ml (le cas échéant), et
la bibliothèque standard OCaml, pour produire un programme exécutable autonome. L'ordre dans lequel
Les arguments .cmo et.ml sont présentés sur la ligne de commande est pertinent : les unités de compilation sont
initialisé dans cet ordre au moment de l'exécution, et c'est une erreur de liaison d'utiliser un composant d'un
unité avant de l'avoir initialisé. Par conséquent, une donnée xLe fichier .cmo doit venir avant tout .cmo
fichiers qui se réfèrent à l'unité x.
Les arguments se terminant par .cma sont considérés comme des bibliothèques de bytecode objet. Une bibliothèque de
Le bytecode objet regroupe dans un seul fichier un ensemble de fichiers de bytecode objet (fichiers .cmo).
Les bibliothèques sont construites avec ocamlc -a (voir la description du -a option ci-dessous). Les
les fichiers objets contenus dans la bibliothèque sont liés comme des fichiers .cmo normaux (voir ci-dessus), dans le
ordre spécifié lors de la création du fichier .cma. La seule différence est que si un objet
fichier contenu dans une bibliothèque n'est référencé nulle part dans le programme, alors il n'est pas
lié dedans.
Les arguments se terminant par .c sont transmis au compilateur C, qui génère un fichier objet .o.
Ce fichier objet est lié au programme si le -Douane l'indicateur est défini (voir le
description de -Douane ci-dessous).
Les arguments se terminant par .o ou .a sont supposés être des fichiers objet C et des bibliothèques. Elles sont
passé à l'éditeur de liens C lors de la liaison dans -Douane mode (voir la description de -Douane
ci-dessous).
Les arguments se terminant par .so sont supposés être des bibliothèques partagées C (DLL). Lors de la liaison, ils
sont recherchées des fonctions C externes référencées à partir du code OCaml, et leurs noms sont
écrit dans l'exécutable du bytecode généré. Le système d'exécution ocamlrun(1) puis charge
dynamiquement au démarrage du programme.
La sortie de la phase de liaison est un fichier contenant le bytecode compilé qui peut être
exécuté par l'interpréteur de bytecode OCaml : la commande ocamlrun(1). Si caml.out est le
nom du fichier produit par la phase de liaison, la commande ocamlrun caml.out
argument1 argument2 ... argn exécute le code compilé contenu dans caml.out, en le passant comme
arguments les chaînes de caractères argument1 à argn. (Voir ocamlrun(1) pour plus de détails.)
Sur la plupart des systèmes, le fichier produit par la phase de liaison peut être exécuté directement, comme dans :
./caml.out argument1 argument2 ... argn. Le fichier produit a le bit d'exécutable défini, et il
parvient à lancer l'interpréteur de bytecode par lui-même.
ocamlc.opt est le même compilateur que ocamlc, mais compilé avec le compilateur de code natif
ocamlopt(1). Ainsi, il se comporte exactement comme ocamlc, mais compile plus rapidement. ocamlc.opt Au cours de cette réunion, Matthew a obtenu de précieux conseils et Linda lui a demandé de la tenir au courant de ses progrès.
pas être disponible dans toutes les installations d'OCaml.
OPTIONS
Les options de ligne de commande suivantes sont reconnues par ocamlc (1).
-a Construire une bibliothèque (fichier .cma) avec les fichiers objets (fichiers .cmo) donnés sur la commande
ligne, au lieu de les lier dans un fichier exécutable. Le nom de la bibliothèque doit
être réglé avec le -o option.
If -Douane, -cclib or -ccopt les options sont passées sur la ligne de commande, ces options
sont stockés dans la bibliothèque .cma résultante. Ensuite, en se liant à cette bibliothèque
ajoute automatiquement le -Douane, -cclib et -ccopt options comme si elles avaient été
fourni sur la ligne de commande, à moins que le -noautolink option est donnée. En outre,
une sous-chaîne $CAMLORIGINE Dans un -ccopt les options seront remplacées par le chemin complet
à la bibliothèque .cma, à l'exclusion du nom de fichier. -nomabs Afficher les noms de fichiers absolus dans
messages d'erreur.
-pas Dump des informations détaillées sur la compilation (types, liaisons, appels de queue, etc.).
Les informations pour le fichier src.ml est mis dans le fichier src.annot. Dans le cas d'un type
erreur, videz toutes les informations déduites par le vérificateur de type avant l'erreur. Les
srcLe fichier .annot peut être utilisé avec les commandes emacs données dans emacs/caml-types.el à
afficher les types et autres annotations de manière interactive.
-bin-annot
Dump des informations détaillées sur la compilation (types, liaisons, appels de queue, etc.)
au format binaire. Les informations pour le fichier src.ml est mis dans le fichier src.cmt. Dans
en cas d'erreur de type, vider toutes les informations déduites par le vérificateur de type avant
l'erreur. Les fichiers d'annotations produits par -bin-annot contenir plus d'informations
et sont beaucoup plus compacts que les fichiers produits par -pas.
-c Compiler uniquement. Supprimer la phase de liaison de la compilation. Les fichiers de code source sont
transformés en fichiers compilés, mais aucun fichier exécutable n'est produit. Cette option est
utile pour compiler les modules séparément.
-cc comp
Utilisez le comp comme l'éditeur de liens C lors de la liaison en mode « custom runtime » (voir le -Douane
option) et en tant que compilateur C pour compiler les fichiers source .c.
-cclib -lnomlib
Réussir l' -lnomlib option à l'éditeur de liens C lors de la liaison en mode "exécution personnalisée"
(voir le -Douane option). Cela provoque la liaison de la bibliothèque C donnée avec le
.
-ccopt option
Passer le donné option au compilateur C et à l'éditeur de liens, lors de la liaison dans "custom
runtime" (voir le -Douane option). Par exemple, -ccopt -Ldir provoque le C
éditeur de liens pour rechercher des bibliothèques C dans le répertoire dir.
-compat-32
Vérifiez que l'exécutable de bytecode généré peut s'exécuter sur des plates-formes 32 bits et signaler
une erreur s'il ne le peut pas. Ceci est utile lors de la compilation de bytecode sur une machine 64 bits.
-config
Imprimer le numéro de version de ocamlc(1) et un résumé détaillé de sa configuration,
puis sortie.
-Douane
Lien en mode "exécution personnalisée". Dans le mode de liaison par défaut, l'éditeur de liens produit
bytecode destiné à être exécuté avec le système d'exécution partagé,
ocamlrun(1). Dans le mode d'exécution personnalisé, l'éditeur de liens produit un fichier de sortie qui
contient à la fois le système d'exécution et le bytecode du programme. La résultante
est plus volumineux, mais il peut être exécuté directement, même si le ocamlrun(1) la commande est
pas installé. De plus, le mode « custom runtime » permet de lier le code OCaml avec
fonctions C définies par l'utilisateur.
N'utilisez jamais le bande(1) commande sur les exécutables produits par ocamlc -Douane, Ce
supprimerait la partie bytecode de l'exécutable.
-dlib -lnomlib
Organiser la bibliothèque partagée C dllnomlib.so à charger dynamiquement par le run-
système de temps ocamlrun(1) au démarrage du programme.
-chemindll dir
Ajoute le répertoire dir au chemin de recherche d'exécution pour les bibliothèques C partagées. À
au moment du lien, les bibliothèques partagées sont recherchées dans le chemin de recherche standard (celui
correspondant à la -I option). Les -chemindll option stocke simplement dir dans le
fichier exécutable produit, où ocamlrun(1) peut le trouver et l'utiliser.
-pour-pack ident
Cette option est acceptée pour la compatibilité avec ocamlopt(1) ; ça ne fait rien.
-g Ajoutez des informations de débogage lors de la compilation et de la liaison. Cette option est obligatoire dans
afin de pouvoir déboguer le programme avec ocamldebug(1) et pour produire la pile
backtraces lorsque le programme se termine sur une exception non interceptée.
-i Faire en sorte que le compilateur affiche tous les noms définis (avec leurs types inférés ou leurs
définitions) lors de la compilation d'une implémentation (fichier .ml). Aucun fichier compilé (.cmo
et .cmi) sont produits. Cela peut être utile pour vérifier les types déduits par
le compilateur. De plus, étant donné que la sortie suit la syntaxe des interfaces, cela peut aider
en écrivant une interface explicite (fichier .mli) pour un fichier : il suffit de rediriger le standard
sortie du compilateur dans un fichier .mli et éditez ce fichier pour supprimer tout
déclarations de noms non exportés.
-I annuaire
Ajouter le répertoire donné à la liste des répertoires recherchés pour l'interface compilée
fichiers (.cmi), fichiers de code objet compilé (.cmo), bibliothèques (.cma) et bibliothèques C
spécifié avec -cclib -lxxx . Par défaut, le répertoire courant est recherché en premier,
puis le répertoire de la bibliothèque standard. Répertoires ajoutés avec -I sont recherchés après
le répertoire courant, dans l'ordre dans lequel ils ont été donnés sur la ligne de commande,
mais avant le répertoire de bibliothèque standard. Voir aussi l'option -nostdlib.
Si le répertoire donné commence par +, il est pris par rapport à la bibliothèque standard
annuaire. Par exemple, -I +compilateur-libs ajoute le sous-répertoire bibliothèques-compilateur of
la bibliothèque standard au chemin de recherche.
-impl nom de fichier
Compiler le fichier nom de fichier comme fichier d'implémentation, même si son extension n'est pas
.ml.
-intf nom de fichier
Compiler le fichier nom de fichier comme fichier d'interface, même si son extension n'est pas .mli.
-intf-suffixe un magnifique
Reconnaître les noms de fichiers se terminant par un magnifique en tant que fichiers d'interface (au lieu de la valeur par défaut
.mli).
-garder-docs
Conservez les chaînes de documentation dans les fichiers .cmi générés.
-garder-locs
Conservez les emplacements dans les fichiers .cmi générés.
-Étiquettes
Les étiquettes ne sont pas ignorées dans les types, les étiquettes peuvent être utilisées dans les applications et étiquetées
les paramètres peuvent être donnés dans n'importe quel ordre. C'est la valeur par défaut.
-linkall
Forcer tous les modules contenus dans les bibliothèques à être liés. Si ce drapeau n'est pas
donné, les modules non référencés ne sont pas liés. Lors de la construction d'une bibliothèque (option -a),
régler le -linkall option force tous les liens ultérieurs de programmes impliquant cette
bibliothèque pour lier tous les modules contenus dans la bibliothèque.
-make-runtime
Construisez un système d'exécution personnalisé (dans le fichier spécifié par l'option -o) intégrant
les fichiers objet C et les bibliothèques donnés sur la ligne de commande. Ce runtime personnalisé
le système peut être utilisé ultérieurement pour exécuter les exécutables bytecode produits avec l'option
ocamlc -utiliser-runtime nom-d'exécution.
-pas d'alias-deps
N'enregistrez pas les dépendances pour les alias de module.
-no-app-fonction
Désactive le comportement applicatif des foncteurs. Avec cette option, chaque foncteur
l'application génère de nouveaux types dans son résultat et applique deux fois le même foncteur
au même argument donne deux structures incompatibles.
-noassert
Ne compilez pas les contrôles d'assertion. Notez que la forme spéciale affirmer non est toujours
compilé car il est typé spécialement. Ce drapeau n'a aucun effet lors de la liaison
fichiers déjà compilés.
-noautolink
Lors de la liaison de bibliothèques .cma, ignorez -Douane, -cclib et -ccopt options potentiellement
contenus dans les bibliothèques (si ces options ont été données lors de la construction du
bibliothèques). Cela peut être utile si une bibliothèque contient des spécifications incorrectes de C
bibliothèques ou options C ; dans ce cas, lors de l'enchaînement, réglez -noautolink et passer le
Corrigez les bibliothèques C et les options sur la ligne de commande.
-pas d'étiquettes
Ignorez les étiquettes non facultatives dans les types. Les étiquettes ne peuvent pas être utilisées dans les applications, et
l'ordre des paramètres devient strict.
-nostdlib
Ne pas ajouter automatiquement le répertoire de bibliothèque standard à la liste des répertoires
recherché des fichiers d'interface compilés (.cmi), des fichiers de code objet compilés (.cmo),
bibliothèques (.cma) et les bibliothèques C spécifiées avec -cclib -lxxx . Voir aussi l'option
-I.
-o fichier-exec
Spécifiez le nom du fichier de sortie produit par l'éditeur de liens. Le nom de sortie par défaut
is a.out, dans le respect de la tradition Unix. Si la -a l'option est donnée, spécifiez
le nom de la bibliothèque produite. Si la -paquet option est donnée, spécifiez le nom
du fichier objet compacté produit. Si la -obj-sortie l'option est donnée, spécifiez
le nom du fichier de sortie produit. Cela peut également être utilisé lors de la compilation d'un
fichier d'interface ou d'implémentation, sans lien, auquel cas il définit le nom
du fichier cmi ou cmo, et définit également le nom du module sur le nom du fichier jusqu'au
premier point.
-ouvrir module
Ouvre le module donné avant de traiter les fichiers d'interface ou d'implémentation. Si
plusieurs -ouvrir sont données, elles sont traitées dans l'ordre, comme si le
déclarations ouvertes! module 1;; ... ouvert! moduleN;; ont été ajoutés en haut de chaque fichier.
-obj-sortie
Faire en sorte que l'éditeur de liens produise un fichier objet C au lieu d'un fichier exécutable de bytecode.
Ceci est utile pour envelopper le code OCaml comme une bibliothèque C, appelable depuis n'importe quel programme C. Les
le nom du fichier objet de sortie doit être défini avec le -o option. Cette option peut également
être utilisé pour produire un fichier source C (extension .c) ou un fichier partagé/dynamique compilé
bibliothèque (extension .so).
-paquet Construire un fichier objet bytecode (fichier .cmo) et son interface compilée associée
(.cmi) qui combine les fichiers objets donnés sur la ligne de commande, les faisant apparaître
comme sous-modules du fichier .cmo de sortie. Le nom du fichier .cmo de sortie doit être
donné avec le -o option. Par exemple, ocamlc -paquet -o p.cmo a.cmo b.cmo c.cmo
génère des fichiers compilés p.cmo et p.cmi décrivant une unité de compilation comportant trois
les sous-modules A, B et C, correspondant au contenu des fichiers objets a.cmo,
b.cmo et c.cmo. Ces contenus peuvent être référencés comme PA, PB et PC dans le
reste du programme.
-pp commander
Faire en sorte que le compilateur appelle le donné commander comme préprocesseur pour chaque source
déposer. La sortie de commander est redirigé vers un fichier intermédiaire, qui est
compilé. S'il n'y a pas d'erreurs de compilation, le fichier intermédiaire est supprimé
après. Le nom de ce fichier est construit à partir du nom de base du fichier source
avec l'extension .ppi pour un fichier d'interface (.mli) et .ppo pour une implémentation
(.ml) fichier.
-ppx commander
Après l'analyse, redirigez l'arbre de syntaxe abstraite via le préprocesseur commanderL’
module Ast_mapper(3) implémente l'interface externe d'un préprocesseur.
-directeur
Vérifiez le chemin des informations lors de la vérification de type, pour vous assurer que tous les types sont
dérivé de manière principale. Lors de l'utilisation d'arguments étiquetés et/ou polymorphes
méthodes, cet indicateur est requis pour garantir que les futures versions du compilateur seront
capable de déduire correctement les types, même si les algorithmes internes changent. Tous les programmes
accepté dans -directeur sont également acceptés dans le mode par défaut avec l'équivalent
types, mais des signatures binaires différentes, ce qui peut ralentir la vérification des types ; encore
c'est une bonne idée de l'utiliser une fois avant de publier le code source.
-rectypes
Autoriser les types récursifs arbitraires lors de la vérification de type. Par défaut, uniquement récursif
les types où la récursivité passe par un type d'objet sont pris en charge. Notez qu'une fois
vous avez créé une interface en utilisant ce drapeau, vous devez l'utiliser à nouveau pour tous
dépendances.
-variante-d'exécution suffixe
Ajoutez des effets de suffixe au nom de la bibliothèque d'exécution qui sera utilisée par le programme. Si
OCaml a été configuré avec l'option -avec-debug-runtime, puis le d le suffixe est
pris en charge et donne une version de débogage du runtime.
-chaîne-sûre
Faire respecter la séparation entre les types un magnifique et octets, rendant ainsi les chaînes read-
seul. Cela deviendra la valeur par défaut dans une future version d'OCaml.
-courts-chemins
Lorsqu'un type est visible sous plusieurs chemins de modules, utilisez le plus court lorsque
impression du nom du type dans les interfaces inférées et les messages d'erreur et d'avertissement.
-séquence-stricte
Forcer la partie gauche de chaque séquence à avoir une unité de type.
-fil
Compiler ou lier des programmes multithreads, en combinaison avec les "threads" du système
bibliothèque décrite dans Le site de OCaml utilisateur Manuel.
-peu sûr
Désactivez la vérification liée pour les accès aux tableaux et aux chaînes (le v.(je)etsi]
constructions). Programmes compilés avec -peu sûr sont donc légèrement plus rapides, mais
unsafe : tout peut arriver si le programme accède à un tableau ou à une chaîne en dehors de
ses limites.
-chaîne-non sécurisée
Identifier les types un magnifique et octets, rendant ainsi les chaînes inscriptibles. Pour des raisons
de compatibilité descendante, c'est le paramètre par défaut pour le moment, mais ce
changera dans une future version d'OCaml.
-utiliser-runtime nom-d'exécution
Générer un fichier exécutable de bytecode qui peut être exécuté sur le runtime personnalisé
Système nom-d'exécution, construit plus tôt avec ocamlc -make-runtime nom-d'exécution.
-v Imprimer le numéro de version du compilateur et l'emplacement de la bibliothèque standard
répertoire, puis quittez.
-verbeux
Imprimer toutes les commandes externes avant leur exécution, en particulier les invocations de
le compilateur et l'éditeur de liens C dans -Douane mode. Utile pour déboguer les problèmes de la bibliothèque C.
-vmthread
Compiler ou lier des programmes multithreads, en combinaison avec les threads au niveau de la machine virtuelle
bibliothèque décrite dans Le site de OCaml utilisateur Manuel.
-numéro virtuel or -version
Affichez le numéro de version du compilateur sous forme abrégée (par exemple "3.11.0"), puis quittez.
-w liste d'avertissement
Activer, désactiver ou marquer comme fatals les avertissements spécifiés par l'argument
liste d'avertissement.
Chaque avertissement peut être activé or handicapé, et chaque avertissement peut être fatalor non mortel.
Si un avertissement est désactivé, il n'est pas affiché et n'affecte la compilation dans aucun
manière (même si c'est fatal). Si un avertissement est activé, il est affiché normalement par
le compilateur chaque fois que le code source le déclenche. S'il est activé et fatal, le
le compilateur s'arrêtera également avec une erreur après l'avoir affiché.
Le site de liste d'avertissement l'argument est une séquence de spécificateurs d'avertissement, sans séparateurs
entre eux. Un spécificateur d'avertissement est l'un des suivants :
+num Activer le numéro d'avertissement num.
-num Désactiver le numéro d'avertissement num.
@num Activer et marquer comme numéro d'avertissement fatal num.
+nombre1..nombre2 Activer tous les avertissements entre nombre1 et nombre2 (compris).
-nombre1..nombre2 Désactivez tous les avertissements entre nombre1 et nombre2 (compris).
@nombre1..nombre2 Activer et marquer comme fatals tous les avertissements entre nombre1 et nombre2
(compris).
+lettre Activer le jeu d'avertissements correspondant à lettre. La lettre peut être
majuscule ou minuscule.
-lettre Désactiver l'ensemble des avertissements correspondant à lettre. La lettre peut être
majuscule ou minuscule.
@lettre Activer et marquer comme fatal l'ensemble des avertissements correspondant à lettre.
La lettre peut être majuscule ou minuscule.
lettre majuscule Activer le jeu d'avertissements correspondant à lettre majuscule.
lettre minuscule Désactiver l'ensemble des avertissements correspondant à lettre minuscule.
Les numéros d'avertissement sont les suivants.
1 Marque de début de commentaire d'apparence suspecte.
2 Marque de fin de commentaire d'apparence suspecte.
3 Fonctionnalité obsolète.
4 Correspondance de motifs fragiles : correspondance qui restera complète même si
des constructeurs supplémentaires sont ajoutés à l'un des types de variantes appariés.
5 Fonction partiellement appliquée : expression dont le résultat est de type fonction et est
ignoré.
6 Étiquette omise dans l'application de la fonction.
7 Méthode remplacée sans utiliser la "méthode!" mot-clé
8 Match partiel : cas manquants dans le pattern-matching.
9 Champs manquants dans un modèle d'enregistrement.
10 Expression sur le côté gauche d'une séquence qui n'a pas de type unité
(et ce n'est pas une fonction, voir l'avertissement numéro 5).
11 Cas redondant dans une correspondance de modèle (cas de correspondance inutilisé).
12 sous-modèle redondant dans une correspondance de modèle.
13 Remplacement d'une variable d'instance.
14 Échappement illégal de barre oblique inverse dans une constante de chaîne.
15 Méthode privée rendue publique implicitement.
16 Argument facultatif non effaçable.
17 Méthode virtuelle non déclarée.
18 Type non principal.
19 Type sans principauté.
20 Argument de fonction non utilisé.
21 Déclaration de non-retour.
22 Avertissement du préprocesseur.
23 Enregistrement inutile avec clause.
24 Nom de module incorrect : le nom du fichier source n'est pas un nom de module OCaml valide.
25 Correspondance de modèle avec toutes les clauses gardées.
26 Variable inutilisée suspecte : variable inutilisée liée à laisser or aset la bien-aimée Sonate en la majeur
ne commence pas par un caractère de soulignement (_).
27 Variable inutilisée inoffensive : variable inutilisée qui n'est pas liée à laisser ni as,
et ne commence pas par un caractère de soulignement (_).
28 Un motif contient un constructeur constant appliqué au trait de soulignement (_)
motif.
29 Une fin de ligne non échappée a été trouvée dans une constante de chaîne. Cela peut causer
problèmes de portabilité entre Unix et Windows.
30 Deux labels ou constructeurs du même nom sont définis dans deux
types récursifs.
31 Un module est lié deux fois dans le même exécutable.
32 Déclaration de valeur non utilisée.
33 Déclaration ouverte non utilisée.
34 Déclaration de type non utilisée.
35 Index de boucle for inutilisé.
36 Variable ancêtre inutilisée.
37 Constructeur inutilisé.
38 Constructeur d'extension inutilisé.
39 Indicateur d'enregistrement inutilisé.
40 Nom du constructeur ou de l'étiquette utilisé hors de la portée.
41 Constructeur ou nom d'étiquette ambigu.
42 Constructeur ou nom d'étiquette sans ambiguïté.
43 Étiquette non facultative appliquée comme facultative.
44 L'instruction Open masque un identifiant déjà défini.
45 L'instruction Open masque une étiquette ou un constructeur déjà défini.
46 Erreur dans la variable d'environnement.
47 Charge utile d'attribut illégale.
48 Élimination implicite des arguments facultatifs.
49 Fichier cmi manquant lors de la recherche de l'alias du module.
50 Commentaire de documentation inattendu.
Les lettres représentent les ensembles d'avertissements suivants. Toute lettre non mentionnée
correspond ici à l'ensemble vide.
A tous les avertissements
C 1, 2
D 3
E 4
F 5
K 32, 33, 34, 35, 36, 37, 38, 39
L 6
M 7
P 8
R 9
S 10
U 11, 12
V 13
X 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 30
Y 26
Z 27
Le paramètre par défaut est -w +a-4-6-7-9-27-29-32..39-41-42-44-45-48-50. Noter que
avertissements 5 et 10 ne sont pas toujours déclenchés, selon les internes du type
vérificateur.
-avertissement-erreur liste d'avertissement
Marquer comme erreurs les avertissements spécifiés dans l'argument liste d'avertissement. Le compilateur
s'arrêtera avec une erreur lorsque l'un de ces avertissements est émis. Les liste d'avertissement
a le même sens que pour le -w option : un + des signes (ou une lettre majuscule)
les avertissements correspondants comme fatals, un - signe (ou une lettre minuscule) les transforme
en avertissements non mortels, et un @ signe à la fois permet et marque comme fatal le
avertissements correspondants.
Remarque : il n'est pas recommandé d'utiliser le -avertissement-erreur option dans le code de fabrication,
car cela empêchera presque certainement de compiler votre programme avec des versions ultérieures
d'OCaml lorsqu'ils ajoutent de nouveaux avertissements ou modifient des avertissements existants.
Le paramètre par défaut est -avertissement-erreur -a (tous les avertissements ne sont pas mortels).
-avertir-aide
Affiche la description de tous les numéros d'avertissement disponibles.
-où Imprimez l'emplacement de la bibliothèque standard, puis quittez.
- filet Processus filet comme nom de fichier, même s'il commence par un tiret (-).
-Aide or --Aidez-moi
Affichez un bref résumé d'utilisation et quittez.
Utiliser ocamlc en ligne à l'aide des services onworks.net
