Samuel Vivien

Results 11 issues of Samuel Vivien

When writing an OS where the memory is exactly mapped from `0xffff_ff00_0000_0000` with a RAM of size`0x0000_0100_0000_000` the following line does an overflow which makes the bootloader panic even if...

I've been looking at type coercion and found some weird behavior. In the example below, `test1` is of type `'a -> (int * 'a)` as expected, however `test2` is ill...

Factored together the code to compare labels during unification. This is just reducing code duplication and does not have any impact on the user. I think this might not require...

typing

The documentation of `Ident.rename` function states that it returns a identifier with a fresh stamp. https://github.com/ocaml/ocaml/blob/e72d835e31ff37f0320773eefffadff2da707626/typing/ident.mli#L37-L40 However it is not the case because when compiling a module we use a...

Implement the fix proposed in #13245 that is allowing finishing a path with `true` or `false`.

language-features

Currently the mechanism for printing reserved identifiers that are keywords is broken with keywords that are values : For example in the toplevel : ```ocaml # let x = Bool.(false)...

Currently the parsing of a constructor leads to an incoherent depending of the syntactic category of the constructor. For example if we define a module ```ocaml module M = struct...

A proposed design for having types as module arguments. [Rendered version](https://github.com/samsa1/ORFCs/blob/type_arguments_for_modules/rfcs/type_arguments_for_modules.md) In summary : ```ocaml module List (type a) = struct type t = a list let size : t...

This PR implements _modular explicits_, namely a new type `(module M : S) -> foo` of functions parametrized over a module parameter, where the module name `M` can occur in...

language-features
parsetree-change
typing-modules

When defining a parametrized type and binding that type variable with an `as` we create a constraint. For example ```ocaml type 'a t1 = int -> (int as 'a) ```...