Superficial support for Core.BigInt type (#4414)

Add a `Core.BigInt` type and a corresponding builtin type in the
toolchain. See [corresponding section of the
design](https://docs.carbon-lang.dev/docs/design/expressions/literals.html#defined-types).

So far this type is not used for anything, and there is no way to create
an instance of it.
This commit is contained in:
Richard Smith
2024-10-16 23:27:01 +00:00
committed by GitHub
parent 96964ee534
commit a02dfe0226
310 changed files with 573 additions and 419 deletions
@@ -173,6 +173,10 @@ constexpr BuiltinInfo None = {"", nullptr};
constexpr BuiltinInfo PrintInt = {"print.int",
ValidateSignature<auto(AnyInt)->NoReturn>};
// Returns the `Core.BigInt` type.
constexpr BuiltinInfo BigIntMakeType = {"big_int.make_type",
ValidateSignature<auto()->Type>};
// Returns the `i32` type. Doesn't take a bit size because we need an integer
// type as a basis for that.
constexpr BuiltinInfo IntMakeType32 = {"int.make_type_32",