{"schema_version":1,"metadata":{"branch":"current","release":"7.9","architecture":"amd64","generated_at":"2026-09-09T04:04:41.004595+00:00","source_url":"https://cdn.openbsd.org/pub/OpenBSD/snapshots/packages/amd64/sqlports-7.55.tgz","source_sha256":"fcdbba1b9df747882aa9bab4af20ebec8dac10655069c90f1cd4145c06e1235e","package_count":12031,"source_kind":"sqlports"},"package":{"name":"cil-1.7.3p7","path":"devel/cil","url":"/packages/current/devel/cil/","comment":"framework for analysis and transformation of C","homepage":"https://cil-project.github.io/cil/","maintainer":"The OpenBSD ports mailing-list <ports@openbsd.org>","description":"CIL (C Intermediate Language) is a high-level representation along\nwith a set of tools that permit easy analysis and source-to-source\ntransformation of C programs.\n\nCIL is both lower-level than abstract-syntax trees, by clarifying\nambiguous constructs and removing redundant ones, and also higher-level\nthan typical intermediate languages designed for compilation, by\nmaintaining types and a close relationship with the source program.\nThe main advantage of CIL is that it compiles all valid C programs\ninto a few core constructs with a very clean semantics. Also CIL\nhas a syntax-directed type system that makes it easy to analyze and\nmanipulate C programs. Furthermore, the CIL front-end is able to\nprocess not only ANSI-C programs but also those using Microsoft C\nor GNU C extensions. If you do not use CIL and want instead to use\njust a C parser and analyze programs expressed as abstract-syntax\ntrees then your analysis will have to handle a lot of ugly corners\nof the language (let alone the fact that parsing C itself is not a\ntrivial task).\n","package_architecture":"amd64","stem":"cil","readme":null,"dependencies":[{"path":"lang/ocaml","type":"runtime","package_spec":"","url":"/packages/current/lang/ocaml/"},{"path":"sysutils/findlib","type":"build","package_spec":"","url":"/packages/current/sysutils/findlib/"},{"path":"devel/ocaml-ocamlbuild","type":"build","package_spec":"","url":"/packages/current/devel/ocaml-ocamlbuild/"},{"path":"math/ocaml-num","type":"build","package_spec":"","url":"/packages/current/math/ocaml-num/"},{"path":"lang/ocaml","type":"build","package_spec":"","url":"/packages/current/lang/ocaml/"},{"path":"devel/metaauto","type":"build","package_spec":"","url":"/packages/current/devel/metaauto/"},{"path":"devel/autoconf/2.69","type":"build","package_spec":"","url":"/packages/current/devel/autoconf/2.69/"},{"path":"devel/gmake","type":"build","package_spec":"","url":"/packages/current/devel/gmake/"}],"reverse_dependencies":{"count":0,"url":null},"categories":["devel","lang"],"flavors":[],"only_for_architectures":["aarch64","amd64","i386"],"not_for_architectures":[]}}
