c3c icon indicating copy to clipboard operation
c3c copied to clipboard

`c3c --list-builtins` missing some builtins

Open Book-reader opened this issue 1 month ago • 4 comments

It was brought to my attention by @allenyade in c3lang/editor-plugins#40 that some builtins in lib/std/core/env.c3 don't show up in c3c --list-builtins.

a (possibly) non-exhasutive list of them taken from c3lang/editor-plugins#40:

$$ADDRESS_SANITIZER
$$ARCH_TYPE
$$AUTHOR_EMAILS
$$AUTHORS
$$BACKTRACE
$$BENCHMARKING
$$BUILD_DATE
$$BUILD_HASH
$$COMPILER_LIBC_AVAILABLE
$$COMPILER_OPT_LEVEL
$$COMPILER_SAFE_MODE
$$DEBUG_SYMBOLS
$$LANGUAGE_DEV_VERSION
$$LLVM_VERSION
$$MAX_VECTOR_SIZE
$$MEMORY_ENVIRONMENT
$$MEMORY_SANITIZER
$$OS_TYPE
$$PANIC_MSG
$$PLATFORM_BIG_ENDIAN
$$PLATFORM_F128_SUPPORTED
$$PLATFORM_F16_SUPPORTED
$$PLATFORM_I128_SUPPORTED
$$PROJECT_VERSION
$$REGISTER_SIZE
$$TESTING
$$THREAD_SANITIZER

Book-reader avatar Nov 07 '25 00:11 Book-reader

Yes, only the dynamic builtins are shown.

lerno avatar Nov 08 '25 21:11 lerno

It would be useful for tooling if there was some option to print them, even if it was a different compiler flag

Book-reader avatar Nov 09 '25 01:11 Book-reader

Also, what do you mean by "dynamic"? Things like $$PANIC_MSG would change depending on what compiler flags are set which seems dynamic to me, but it isn't included in --list-builtins.

Book-reader avatar Nov 09 '25 01:11 Book-reader

I mean dynamic as it will vary per file.

lerno avatar Nov 20 '25 13:11 lerno