Results 13 issues of Stephen Dolan

When `windows = true`, Fpath does this: ``` # let d, b = split_base (v "A:B:C") in to_string (d // b);; - : string = "B:C" # let d, b...

Bugs found in OPAM packages: xmldiff: zoggy/xmldiff#4 calendar: https://forge.ocamlcore.org/tracker/index.php?func=detail&aid=1748&group_id=83&atid=415 yojson: mjambon/yojson#20 (reproduced, not originally found with crowbar) cbor: ygrek/ocaml-cbor#1 bson: MassD/bson#16 bes: (via email) uunf: dbuenzli/uunf#8, dbuenzli/uunf#10 bencode: rgrinberg/bencode#4 fpath:...

It's possible to install and use crowbar in a non-afl-switch, and then try to run the resulting binaries under `afl-fuzz`. The error message that `afl-fuzz` gives is, eh, somewhat unhelpful....

In the presence of a type with covariant parameters: ```ocaml type (+'a, +'b) t val diag : unit -> ('a, 'a) t ``` the relaxed value restriction ([@garrigue, 2004](https://caml.inria.fr/pub/papers/garrigue-value_restriction-fiwflp04.pdf)) means...

feature-wish
Stale

@lpw25 and I noticed that Simplif.simplify_exits does not preserve semantics when `Lstaticraise` is used in non-tail position, transforming this: ``` (catch (seq (exit 0) (raise exn/4)) with (0) 42) ```...

It's debatable whether this is a bug - there's no segfaulting, just nontermination. But the nontermination arises without any use of recursion or loops at the type or value level,...

The typechecker assumes that abstract types from the current module (that is, whose paths contain no dots) must have come from an empty definition like `type t`, and thus cannot...

#12910 demonstrates a soundness issue caused by several functions in `ctype.ml` (e.g. `Ctype.equal`) incorrectly clobbering `univar_pairs`. This patch has two changes to resolve this problem: 1. Instead of overwriting, `univar_pairs`...

bug

Due to how staging is currently implemented for functors, telescoped scopes are broken (i.e. the first argument to a functor is not in scope in the module type of the...

Port of ocaml-flambda/flambda-backend#1387 * Reset GC backlog at each cycle unconditionally * Change GC backlog units to be words rather than heap fractions