Це команда ocamlc, яку можна запустити в постачальнику безкоштовного хостингу OnWorks за допомогою однієї з наших численних безкоштовних робочих станцій, таких як Ubuntu Online, Fedora Online, онлайн- емулятор Windows або онлайн-емулятор MAC OS
ПРОГРАМА:
ІМ'Я
ocamlc - компілятор байт-коду OCaml
СИНТАКСИС
ocamlc [ опції ] ім'я файлу ...
ocamlc.opt [ опції ] ім'я файлу ...
ОПИС
Компілятор байт-коду OCaml ocamlc(1) компілює вихідні файли OCaml в об'єктні файли байтового коду
і зв’язує ці об’єктні файли для створення окремих виконуваних файлів байт-коду. Ці
виконувані файли потім запускаються інтерпретатором байт-коду ocamlrun(1).
Команда ocamlc(1) Команда має інтерфейс командного рядка, подібний до інтерфейсу більшості компіляторів C.
Він приймає кілька типів аргументів і обробляє їх послідовно:
Аргументи, що закінчуються на .mli, вважаються вихідними файлами для інтерфейсів одиниць компіляції.
Інтерфейси вказують імена, експортовані одиницями компіляції: вони оголошують імена значень за допомогою
їхні типи, визначають загальнодоступні типи даних, оголошують абстрактні типи даних тощо. Від
файл x.mli, the ocamlc(1) компілятор створює скомпільований інтерфейс у файлі x.cmi.
Аргументи, що закінчуються на .ml, вважаються вихідними файлами для реалізацій блоку компіляції.
Реалізації надають визначення для імен, експортованих блоком, а також містять
вирази, які потрібно оцінити на предмет їх побічних ефектів. З файлу x.мл, ocamlc(1)
компілятор створює скомпільований байт-код об'єкта у файлі x.cmo.
Якщо файл інтерфейсу x.mli існує, реалізація x.ml перевіряється на
відповідний скомпільований інтерфейс x.cmi, який, як передбачається, існує. Якщо немає інтерфейсу x.mli
передбачено, складання о x.ml створює скомпільований файл інтерфейсу x.cmi крім того
у скомпільований файл об’єктного коду x.cmo. Файл xСтворений .cmi відповідає an
інтерфейс, який експортує все, що визначено в реалізації x.мл
Аргументи, що закінчуються на .cmo, вважаються скомпільованим об’єктним байт-кодом. Ці файли пов’язані
разом з об’єктними файлами, отриманими шляхом компіляції аргументів .ml (якщо такі є), і
стандартної бібліотеки OCaml, щоб створити окрему виконувану програму. Порядок, у якому
Аргументи .cmo і.ml представлені в командному рядку є актуальним: одиниці компіляції є
ініціалізується в такому порядку під час виконання, і використання компонента a є помилкою під час посилання
блоку до його ініціалізації. Отже, даність xФайл .cmo має бути перед усіма файлами .cmo
файли, які посилаються на пристрій x.
Аргументи, що закінчуються на .cma, вважаються бібліотеками байт-коду об'єкта. Бібліотека о
об'єктний байт-код упаковує в один файл набір файлів об'єктного байт-коду (файли .cmo).
Бібліотеки будуються з ocamlc -a (див. опис -a варіант нижче). The
об’єктні файли, що містяться в бібліотеці, зв’язуються як звичайні файли .cmo (див. вище), у файлі
порядок, зазначений під час створення файлу .cma. Різниця лише в тому, що якщо об’єкт
файл, що міститься в бібліотеці, ніде не посилається в програмі, то на нього немає
пов'язаний в.
Аргументи, що закінчуються на .c, передаються компілятору C, який створює об’єктний файл .o.
Цей об’єктний файл пов’язаний з програмою, якщо - звичай встановлено прапор (див
опис - звичай нижче).
Аргументи, що закінчуються на .o або .a, вважаються об’єктними файлами та бібліотеками C. Вони є
передається компоновщику C при з’єднанні - звичай режим (див. опис - звичай
нижче).
Аргументи, що закінчуються на .so, вважаються спільними бібліотеками C (DLL). Під час з’єднання вони
шукають зовнішні функції C, на які посилається код OCaml, і їх назви
записаний у згенерованому виконуваному файлі байт-коду. Система часу виконання ocamlrun(1) потім завантажується
їх динамічно під час запуску програми.
Результатом фази зв’язування є файл, що містить скомпільований байт-код, який може бути
виконується інтерпретатором байт-коду OCaml: команда ocamlrun(1). Якщо caml.out є
ім'я файлу, створеного на етапі зв'язування, команда ocamlrun caml.out
arg1 arg2 ... арг виконує скомпільований код, що міститься в caml.out, передаючи це як
аргументи рядків символів arg1 до арг. (Подивитися ocamlrun(1) для більш детальної інформації.)
У більшості систем файл, створений на етапі підключення, можна запустити безпосередньо, як у:
./caml.out arg1 arg2 ... арг. У створеному файлі встановлений біт виконуваного файлу, і він
вдається самостійно запустити інтерпретатор байт-коду.
ocamlc.opt є таким же компілятором, що і ocamlc, але скомпільований за допомогою компілятора рідного коду
окамлопт(1). Таким чином, він поводиться саме так ocamlc, але компілюється швидше. ocamlc.opt може
бути доступним не в усіх установках OCaml.
ВАРІАНТИ
Наступні параметри командного рядка розпізнаються ocamlc(1).
-a Створіть бібліотеку (файл .cma) з об’єктними файлами (файлами .cmo), заданими в команді
рядка, замість того, щоб зв’язувати їх у виконуваний файл. Назва бібліотеки обов'язково
бути встановлений з -o варіант.
If - звичай, -cclib or -ccopt параметри передаються в командному рядку, ці параметри
зберігаються в отриманій бібліотеці .cma. Потім, зв’язавшись з цією бібліотекою
автоматично додає назад - звичай, -cclib та -ccopt варіанти, як ніби вони були
надається в командному рядку, якщо не -безавтопосилання надається варіант. Крім того,
підрядок $CAMLORIGIN всередині а -ccopt параметри буде замінено повним шляхом
до бібліотеки .cma, за винятком імені файлу. - absname Показати абсолютні назви файлів у
повідомлення про помилки.
-не Дамп детальну інформацію про компіляцію (типи, прив’язки, хвостові виклики тощо).
Інформація для файлу SRC.ml поміщається у файл SRC.не У разі типу
помилка, вивести всю інформацію, отриману за допомогою перевірки типів, перед помилкою. The
SRCФайл .annot можна використовувати з командами emacs, наведеними в emacs/caml-types.el до
типи відображення та інші анотації в інтерактивному режимі.
-bin-annot
Дамп детальної інформації про компіляцію (типи, прив’язки, хвостові виклики тощо)
у двійковому форматі. Інформація для файлу SRC.ml поміщається у файл SRC.cmt в
у випадку помилки типу, скиньте всю інформацію, отриману за допомогою перевірки типів раніше
помилка. Файли анотацій, створені -bin-annot містять більше інформації
і є набагато компактнішими, ніж файли, створені за допомогою -не.
-c Тільки компіляція. Придушити фазу зв’язування компіляції. Файли вихідного коду є
перетворюється на скомпільовані файли, але не створюється виконуваний файл. Цей варіант є
корисно для компіляції модулів окремо.
-cc ccom
Скористайтеся кнопкою ccom як компонувальник C під час компонування в режимі "користувацького часу виконання" (див - звичай
опція) і як компілятор C для компіляції вихідних файлів .c.
-cclib -llibname
Передайте -llibname опцію до компоновщика C при з'єднанні в режимі "користувацького часу виконання".
(Див - звичай варіант). Це призводить до того, що дана бібліотека C буде пов’язана з
програми.
-ccopt варіант
Здати задане варіант компілятору і компоновщику C при створенні посилань у «custom
режим виконання" (див - звичай варіант). Наприклад, -ccopt -Lреж викликає C
компонувальник для пошуку бібліотек C у каталозі реж.
-compat-32
Переконайтеся, що згенерований виконуваний файл байт-коду може працювати на 32-розрядних платформах і сигналізувати
помилка, якщо не можна. Це корисно під час компіляції байт-коду на 64-розрядній машині.
-config
Надрукуйте номер версії ocamlc(1) і детальний опис його конфігурації,
потім вийти.
- звичай
Посилання в режимі «користувацького виконання». У режимі зв'язування за замовчуванням компонувальник створює
байт-код, який призначений для виконання за допомогою спільної системи виконання,
ocamlrun(1). У спеціальному режимі виконання компонувальник створює вихідний файл, який
містить як систему часу виконання, так і байт-код програми. Отриманий
файл більший, але його можна виконати безпосередньо, навіть якщо файл ocamlrun(1) команда є
не встановлено. Крім того, режим «користувацького середовища виконання» дозволяє зв'язувати код OCaml з
визначені користувачем функції C.
Ніколи не використовуйте роздягнутися(1) команда для виконуваних файлів, створених ocamlc - звичай, Це
видалить частину байт-коду виконуваного файлу.
-dllib -llibname
Організуйте спільну бібліотеку C DLLlibname.тому динамічно завантажуватися за допомогою run-
система часу ocamlrun(1) під час запуску програми.
-dllpath реж
Додає каталог реж до шляху пошуку під час виконання для спільних бібліотек C. В
час посилання, пошук у спільних бібліотеках здійснюється за стандартним шляхом пошуку (один
відповідні -I варіант). The -dllpath опція просто зберігає реж ,
створений виконуваний файл, де ocamlrun(1) може знайти його та використати.
-за упаковку ідент
Цей параметр прийнято для сумісності з окамлопт(1) ; це нічого не робить.
-g Додайте інформацію про налагодження під час компіляції та зв’язування. Ця опція обов’язкова в
щоб мати можливість налагодити програму за допомогою ocamldebug(1) і створити стек
зворотні трасування, коли програма завершує роботу через неперехоплений виняток.
-i Змусити компілятор надрукувати всі визначені імена (з їхніми виведеними типами або їх
визначення) під час компіляції реалізації (файл .ml). Немає скомпільованих файлів (.cmo
і файли .cmi). Це може бути корисно для перевірки типів, визначених за допомогою
компілятор. Крім того, оскільки вихідні дані відповідають синтаксису інтерфейсів, це може допомогти
у написанні явного інтерфейсу (файл .mli) для файлу: просто перенаправте стандарт
вивести компілятор у файл .mli і відредагувати цей файл, щоб видалити всі
декларації неекспортованих назв.
-I каталог
Додайте вказаний каталог до списку каталогів, які шукали для скомпільованого інтерфейсу
файли (.cmi), скомпільовані файли об'єктного коду (.cmo), бібліотеки (.cma) і бібліотеки C
зазначено с -cclib -lххх . За замовчуванням першим шукається поточний каталог,
потім каталог стандартної бібліотеки. Каталоги додано з -I розшукуються
поточний каталог у тому порядку, в якому вони були вказані в командному рядку,
але перед каталогом стандартної бібліотеки. Дивіться також варіант -nostdlib.
Якщо даний каталог починається з +, він береться відносно стандартної бібліотеки
каталог. Наприклад, -I +компілятор-бібліотеки додає підкаталог бібліотеки компілятора of
стандартної бібліотеки до шляху пошуку.
-імппл ім'я файлу
Скомпілюйте файл ім'я файлу як файл реалізації, навіть якщо його розширення не є
.мл
-intf ім'я файлу
Скомпілюйте файл ім'я файлу як файл інтерфейсу, навіть якщо його розширення не .mli.
-intf-суфікс рядок
Розпізнавати імена файлів, які закінчуються на рядок як файли інтерфейсу (замість стандартних
.mli).
- Keep-docs
Зберігайте рядки документації в згенерованих файлах .cmi.
-keep-locs
Зберігайте розташування у згенерованих файлах .cmi.
- етикетки
Мітки не ігноруються в типах, мітки можуть використовуватися в програмах і позначатися
параметри можна задавати в будь-якому порядку. Це значення за замовчуванням.
-linkall
Примусово пов’язувати всі модулі, що містяться в бібліотеках. Якщо цього прапора немає
враховуючи, модулі без посилання не пов’язуються. Під час створення бібліотеки (опція -a),
встановлення -linkall Параметр змушує всі наступні посилання програм, які включають це
бібліотека, щоб зв’язати всі модулі, що містяться в бібліотеці.
- make-runtime
Створіть спеціальну систему виконання (у файлі, визначеному параметром -o) включення
об’єктні файли та бібліотеки C, надані в командному рядку. Це індивідуальне виконання
систему можна використовувати пізніше для виконання виконуваних файлів байт-коду, створених за допомогою параметра
ocamlc -використання-час виконання ім'я часу виконання.
-no-alias-deps
Не записуйте залежності для псевдонімів модулів.
-no-app-func
Дезактивує аплікаційну поведінку функторів. За допомогою цього параметра кожен функтор
додаток генерує нові типи в своєму результаті і застосовує один і той же функтор двічі
з одним і тим же аргументом дає дві несумісні структури.
-но стверджувати
Не компілюйте перевірки підтверджень. Зверніть увагу, що спеціальна форма стверджувати false є завжди
зібрано, тому що набрано спеціально. Цей прапор не діє при з’єднанні
вже скомпільовані файли.
-безавтопосилання
Під час зв’язування бібліотек .cma ігноруйте - звичай, -cclib та -ccopt потенційні варіанти
містяться в бібліотеках (якщо ці параметри були дані під час побудови
бібліотеки). Це може бути корисно, якщо бібліотека містить неправильні специфікації C
бібліотеки або параметри C; в цьому випадку під час зв'язування встановіть -безавтопосилання і пройти
правильні бібліотеки та параметри C у командному рядку.
-номітки
Ігноруйте необов’язкові мітки в типах. Мітки не можна використовувати в програмах і
порядок параметрів стає суворим.
-nostdlib
Не додавайте автоматично каталог стандартної бібліотеки до списку каталогів
шукав скомпільовані файли інтерфейсу (.cmi), скомпільовані файли об’єктного коду (.cmo),
бібліотеки (.cma) і бібліотеки C, задані з -cclib -lххх . Дивіться також варіант
-I.
-o exec-файл
Вкажіть ім'я вихідного файлу, створеного компонувальником. Ім'я виводу за замовчуванням
is а, відповідно до традицій Unix. Якщо -a надано опцію, вкажіть
назва створеної бібліотеки. Якщо - упаковка вказана опція, вкажіть назву
створеного запакованого об’єктного файлу. Якщо -output-obj надано опцію, вкажіть
ім'я створеного вихідного файлу. Це також можна використовувати під час компіляції файлу
інтерфейс або файл реалізації, без посилання, і в цьому випадку він встановлює ім'я
файлу cmi або cmo, а також встановлює назву модуля на ім’я файлу до
перша точка.
-відчинено Модулі
Відкриває даний модуль перед обробкою файлів інтерфейсу або реалізації. Якщо
кілька -відчинено надаються варіанти, вони опрацьовуються по порядку, як би
відкриті заяви! модуль1;; ... відчинено! модульN;; були додані у верхній частині кожного файлу.
-output-obj
Змусити компонувальник створити об’єктний файл C замість виконуваного файлу байт-коду.
Це корисно, щоб обернути код OCaml як бібліотеку C, яку можна викликати з будь-якої програми на C. The
Ім’я вихідного об’єктного файлу має бути встановлено за допомогою -o варіант. Цей варіант також може
використовуватися для створення вихідного файлу C (розширення .c) або скомпільованого спільного/динамічного файлу
бібліотека (розширення .so).
- упаковка Створіть об’єктний файл байт-коду (файл .cmo) і пов’язаний з ним скомпільований інтерфейс
(.cmi), який об’єднує об’єктні файли, наведені в командному рядку, завдяки чому вони відображаються
як підмодулі вихідного файлу .cmo. Ім’я вихідного файлу .cmo має бути
надано з -o варіант. Наприклад, ocamlc - упаковка -o p.cmo a.cmo b.cmo c.cmo
генерує скомпільовані файли p.cmo та p.cmi, що описують одиницю компіляції, яка має три
підмодулі A, B і C, що відповідають вмісту об'єктних файлів a.cmo,
b.cmo і c.cmo. На цей вміст можна посилатися як PA, PB і PC в
залишок програми.
-стор команда
Змусити компілятор викликати дане команда як препроцесор для кожного джерела
файл. Вихід з команда перенаправляється до проміжного файлу, який є
складено. Якщо немає помилок компіляції, проміжний файл видаляється
потім. Ім'я цього файлу складається з базового імені вихідного файлу
з розширенням .ppi для файлу інтерфейсу (.mli) і .ppo для реалізації
(.ml) файл.
-ppx команда
Після розбору передайте абстрактне синтаксичне дерево через препроцесор команда,
Модулі ast_mapper(3) реалізує зовнішній інтерфейс препроцесора.
- довіритель
Перевірте шлях інформації під час перевірки типів, щоб переконатися, що всі типи є
виведені принциповим способом. При використанні мічених аргументів та/або поліморфних
методів, цей прапорець необхідний для забезпечення майбутніх версій компілятора
здатний правильно виводити типи, навіть якщо внутрішні алгоритми змінюються. Усі програми
прийнято в - довіритель режим також приймаються в режимі за замовчуванням з еквівалентом
типи, але різні двійкові підписи, і це може сповільнити перевірку типів; ще
це гарна ідея використовувати його один раз перед публікацією вихідного коду.
-прямі типи
Дозволити довільні рекурсивні типи під час перевірки типів. За замовчуванням тільки рекурсивний
підтримуються типи, де рекурсія проходить через тип об’єкта. Зверніть увагу, що один раз
ви створили інтерфейс за допомогою цього прапорця, ви повинні використовувати його знову для всіх
залежності.
-варіант часу виконання Суфікс
додавати Суфікс до імені бібліотеки часу виконання, яка буде використовуватися програмою. Якщо
OCaml був налаштований з параметром -with-debug-runtime, А потім d суфікс є
підтримується і дає налагоджувальну версію середовища виконання.
- безпечний шнурок
Забезпечте поділ між типами рядок та bytes, таким чином змушуючи рядки читати-
тільки Це стане за замовчуванням у майбутній версії OCaml.
- короткі шляхи
Якщо тип видно під кількома шляхами до модулів, використовуйте найкоротший, коли
друк назви типу в передбачуваних інтерфейсах, а також повідомлення про помилки та попередження.
- сувора послідовність
Змусити ліву частину кожної послідовності мати одиницю типу.
- нитка
Компілюйте або зв'яжіть багатопотокові програми в поєднанні з системними "потоками"
бібліотека, описана в Команда OCaml user's керівництво.
- небезпечно
Вимкніть прив’язану перевірку для доступу до масивів і рядків ( v.(i)та s[i]
конструкції). Програми, складені з - небезпечно тому трохи швидше, але
небезпечно: все може статися, якщо програма звертається до масиву або рядка поза межами
його межі.
-небезпечний шнурок
Визначте типи рядок та bytes, що робить рядки доступними для запису. З причин
щодо зворотної сумісності, на даний момент це налаштування за замовчуванням, але це
зміниться в майбутній версії OCaml.
-використання-час виконання ім'я часу виконання
Створіть виконуваний файл байт-коду, який можна виконати в користувацькому середовищі виконання
система ім'я часу виконання, побудований раніше с ocamlc - make-runtime ім'я часу виконання.
-v Надрукуйте номер версії компілятора та розташування стандартної бібліотеки
каталогу, а потім вийдіть.
-вербозний
Роздрукуйте всі зовнішні команди перед їх виконанням, зокрема виклики
компілятор і компонувальник C - звичай режим. Корисно для налагодження проблем бібліотеки C.
-vmthread
Компілюйте або зв’яжіть багатопотокові програми в поєднанні з потоками рівня ВМ
бібліотека, описана в Команда OCaml user's керівництво.
-внум or -версія
Надрукуйте номер версії компілятора в короткій формі (наприклад, "3.11.0"), а потім вийдіть.
-w список попереджень
Увімкнути, вимкнути або позначити як небезпечні попередження, зазначені в аргументі
список попереджень.
Кожне попередження може бути включений or інвалід, і кожне попередження може бути фатальнийor не смертельно.
Якщо попередження вимкнено, воно не відображається і не впливає на компіляцію
спосіб (навіть якщо він смертельний). Якщо попередження увімкнено, воно зазвичай відображається за допомогою
компілятор кожного разу, коли його запускає вихідний код. Якщо це увімкнено та фатально, то
компілятор також зупиниться з помилкою після її відображення.
Команда список попереджень аргумент — це послідовність специфікаторів попереджень без роздільників
між ними. Специфікатор попередження є одним із наступних:
+Num Увімкнути номер попередження Num.
-Num Вимкнути номер попередження Num.
@Num Увімкніть і позначте як смертельне попередження Num.
+номер1..номер2 Увімкнути всі попередження між номер1 та номер2 (включно).
-номер1..номер2 Вимкніть усі попередження між номер1 та номер2 (включно).
@номер1..номер2 Увімкніть і позначте як смертельні всі попередження між ними номер1 та номер2
(включно).
+лист Увімкнути набір попереджень, відповідних до лист. Лист може бути
великі чи малі літери.
-лист Вимкніть відповідний набір попереджень лист. Лист може бути
великі чи малі літери.
@лист Увімкніть і позначте як смертельний набір відповідних попереджень лист.
Літера може бути великою або малою.
прописна літера Увімкнути набір попереджень, відповідних до прописна літера.
мала літера Вимкніть відповідний набір попереджень мала літера.
Номери попереджень такі.
1 Знак початку коментаря підозрілого.
2 Підозріло виглядає позначка кінця коментаря.
3 Застаріла функція.
4 Крихке зіставлення візерунків: збіг, який залишиться повним, навіть якщо
додаткові конструктори додаються до одного з відповідних типів варіантів.
5 Частково застосована функція: вираз, результат якого має тип функції та є
ігнорується.
6 Мітка пропущена в програмі функції.
7 Метод замінено без використання "метод!" ключове слово
8 Часткова відповідність: пропущені випадки у відповідності з шаблоном.
9 Відсутні поля в шаблоні запису.
10 Вираз у лівій частині послідовності, яка не має типу блок
(і це не функція, див. попередження № 5).
11 Надлишковий регістр у відповідності шаблону (невикористаний регістр відповідності).
12 Надлишковий підшаблон у відповідності з шаблоном.
13 Перевизначення змінної екземпляра.
14 Недопустимий вихід із зворотного слешу в константі рядка.
15 Приватний метод неявно оприлюднений.
16 Додатковий аргумент, який не можна стирати.
17 Неоголошений віртуальний метод.
18 Неосновний тип.
19 Тип без князівства.
20 Невикористаний аргумент функції.
21 Заява про неповернення.
22 Попередження препроцесора.
23 Марний запис з пункт.
24 Погане ім'я модуля: ім'я вихідного файлу не є дійсним ім'ям модуля OCaml.
25 Узгодження шаблонів з усіма реченнями, що охороняються.
26 Підозріла невикористана змінна: невикористана змінна, яка пов'язана з дозволяти or as та
не починається з символу підкреслення (_).
27 Нешкідлива невикористана змінна: невикористана змінна, яка не пов'язана з дозволяти ні as,
і не починається з символу підкреслення (_).
28 Шаблон містить константний конструктор, застосований до підкреслення (_)
рисунок.
29 У константі рядка знайдено не екранований кінець рядка. Це може спричинити
проблеми з перенесенням між Unix і Windows.
30 Дві мітки або конструктори з однаковою назвою визначаються в двох взаємно
рекурсивні типи.
31 Модуль двічі зв'язується в одному виконуваному файлі.
32 Декларація невикористаної вартості.
33 Невикористана відкрита заява.
34 Невикористана декларація типу.
35 Невикористаний покажчик циклу for.
36 Невикористана змінна-предок.
37 Невикористаний конструктор.
38 Невикористаний конструктор розширення.
39 Невикористаний прапор запису.
40 Ім'я конструктора або мітки використовується поза областью дії.
41 Неоднозначне ім'я конструктора або мітки.
42 Неоднозначне ім'я конструктора або мітки.
43 Необов'язкова мітка застосована як необов'язкова.
44 Оператор Open затінює вже визначений ідентифікатор.
45 Оператор Open затінює вже визначену мітку або конструктор.
46 Помилка у змінній середовища.
47 Незаконний атрибут корисного навантаження.
48 Неявне усунення необов'язкових аргументів.
49 Відсутній файл cmi під час пошуку псевдоніма модуля.
50 Неочікуваний коментар до документації.
Букви означають наступні набори попереджень. Будь-який лист, не згаданий
тут відповідає порожній множині.
A всі попередження
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
За замовчуванням встановлено значення -w +a-4-6-7-9-27-29-32..39-41-42-44-45-48-50. Зверніть увагу на це
попередження 5 та 10 не завжди спрацьовують, залежно від внутрішніх елементів типу
шашка.
-попередження-помилка список попереджень
Позначте як помилки попередження, зазначені в аргументі список попереджень. Компілятор
зупиниться з помилкою, коли з’явиться одне з цих попереджень. The список попереджень
має те саме значення, що і для -w варіант: а + знаки (або велика літера).
відповідні попередження як смертельні, a - знак (або мала літера) перетворює їх
повернутися до нефатальних попереджень, і a @ знак як дозволяє, так і позначає як фатальний
відповідні попередження.
Примітка: не рекомендується використовувати -попередження-помилка варіант у виробничому коді,
оскільки це майже напевно перешкодить компіляції вашої програми з більш пізніми версіями
OCaml, коли вони додають нові попередження або змінюють наявні попередження.
За замовчуванням встановлено значення -попередження-помилка -a (усі попередження не є смертельними).
-попередити-допоможи
Показати опис усіх доступних номерів попереджень.
-де Надрукуйте розташування стандартної бібліотеки, а потім вийдіть.
- файл Процес файл як ім’я файлу, навіть якщо воно починається з тире (-).
-допомога or --допомога
Відобразити короткий підсумок використання та вийти.
Використовуйте ocamlc онлайн за допомогою служб onworks.net