Opened 4 years ago
#249 new enhancement
extern "Builtins"
Reported by: | Thierry Delisle | Owned by: | |
---|---|---|---|
Priority: | major | Component: | prelude |
Version: | 1.0 | Keywords: | builtins |
Cc: |
Description
gcc and clang support thousands of builtin functions which cforall must know about. Both gcc and clang lists these builtins using a custom internal format which is difficult to copy.
Some of these builtins, especially the platform specific ones, are mostly wrapped in extern inline
functions and listed in headers.
A "simple" approach to supporting these would be to add a special tag to these functions so that they are added to the symbol table, but the definition is not result and simply code generated as-is.
Packaging these as extern "builtins" {/*...*/
} would allowing including the wrapper headers and automatically get support for a large section of the blueprint functionnality.