@@ -9,20 +9,28 @@ extern "C"
99#endif
1010
1111__attribute__((import_module ("owi" ), import_name ("i32_symbol" ))) int32_t owi_int32 (void );
12+ int32_t owi_named_int32 (const char * name );
1213__attribute__((import_module ("owi" ), import_name ("i32_symbol" ))) uint32_t owi_uint32 (void );
14+ uint32_t owi_named_uint32 (const char * name );
1315__attribute__((import_module ("owi" ), import_name ("i64_symbol" ))) int64_t owi_int64 (void );
16+ int64_t owi_named_int64 (const char * name );
1417__attribute__((import_module ("owi" ), import_name ("i64_symbol" ))) uint64_t owi_uint64 (void );
18+ uint64_t owi_named_uint64 (const char * name );
1519
1620#ifndef __FRAMAC__
1721__int128 owi_int128 (void );
22+ __int128 owi_named_int128 (const char * name );
1823unsigned __int128 owi_uint128 (void );
24+ unsigned __int128 owi_named_uint128 (const char * name );
1925#endif
2026
2127_Static_assert (sizeof (float ) == 4 , "Unsupported float size. Please open an issue." );
2228__attribute__((import_module ("owi" ), import_name ("f32_symbol" ))) float owi_float (void );
29+ float owi_named_float (const char * name );
2330
2431_Static_assert (sizeof (double ) == 8 , "Unsupported double size. Please open an issue." );
2532__attribute__((import_module ("owi" ), import_name ("f64_symbol" ))) double owi_double (void );
33+ double owi_named_double (const char * name );
2634
2735// TODO
2836// long double owi_long_double(void);
@@ -34,19 +42,36 @@ __attribute__((import_module("owi"), import_name("f64_symbol"))) double owi_doub
3442 _Bool
3543#endif
3644 owi_bool (void );
45+ #ifdef __cplusplus
46+ bool
47+ #else
48+ _Bool
49+ #endif
50+ owi_named_bool (const char * name );
3751char owi_char (void );
52+ char owi_named_char (const char * name );
3853unsigned char owi_unsigned_char (void );
54+ unsigned char owi_named_unsigned_char (const char * name );
3955short owi_short (void );
56+ short owi_named_short (const char * name );
4057unsigned short owi_unsigned_short (void );
58+ unsigned short owi_named_unsigned_short (const char * name );
4159int owi_int (void );
60+ int owi_named_int (const char * name );
4261unsigned int owi_unsigned_int (void );
62+ unsigned int owi_named_unsigned_int (const char * name );
4363long owi_long (void );
64+ long owi_named_long (const char * name );
4465unsigned long owi_unsigned_long (void );
66+ unsigned long owi_named_unsigned_long (const char * name );
4567long long owi_long_long (void );
68+ long long owi_named_long_long (const char * name );
4669unsigned long long owi_unsigned_long_long (void );
70+ unsigned long long owi_named_unsigned_long_long (const char * name );
4771
4872// TODO: improve this
4973__attribute__((import_module ("owi" ), import_name ("range_symbol" ))) int owi_range (int lo , int hi );
74+ int owi_named_range (const char * name , int lo , int hi );
5075
5176__attribute__((import_module ("owi" ), import_name ("alloc" ))) void * owi_malloc (void * , unsigned int );
5277__attribute__((import_module ("owi" ), import_name ("print_char" ))) void owi_print_char (int );
@@ -57,11 +82,12 @@ __attribute__((import_module("owi"), import_name("cov_label_set"))) void owi_lab
5782#ifdef __OWI_INTERNALS
5883
5984__attribute__((import_module ("owi" ), import_name ("invisible_bool_symbol" ))) int owi_invisible_bool (void );
60- __attribute__((import_module ("owi" ), import_name ("open_scope" ))) void owi_open_scope (const char * name );
61- __attribute__((import_module ("owi" ), import_name ("close_scope" ))) void owi_close_scope (void );
6285
6386#endif
6487
88+ __attribute__((import_module ("owi" ), import_name ("open_scope" ))) void owi_open_scope (const char * name );
89+ __attribute__((import_module ("owi" ), import_name ("close_scope" ))) void owi_close_scope (void );
90+
6591__attribute__((import_module ("owi" ), import_name ("assume" ))) void owi_assume (int );
6692__attribute__((import_module ("owi" ), import_name ("assert" ))) void owi_assert (int );
6793// TODO: do we need these two ? we already have abort and exit in stdlib that are exactly the same
0 commit comments