Changes in / [78f0422c:71b4444] in mainline
- Files:
-
- 13 edited
-
abi/include/_bits/decls.h (modified) (1 diff)
-
abi/include/_bits/uchar.h (modified) (1 diff)
-
kernel/generic/src/interrupt/interrupt.c (modified) (5 diffs)
-
uspace/app/tester/fault/fault1.c (modified) (1 diff)
-
uspace/app/tester/print/print5.c (modified) (1 diff)
-
uspace/lib/c/generic/rtld/symbol.c (modified) (1 diff)
-
uspace/lib/c/generic/thread/fibril_synch.c (modified) (1 diff)
-
uspace/lib/c/include/adt/list.h (modified) (1 diff)
-
uspace/lib/c/include/fibril_synch.h (modified) (1 diff)
-
uspace/lib/c/test/string.c (modified) (1 diff)
-
uspace/lib/cpp/include/__bits/algorithm.hpp (modified) (1 diff)
-
uspace/lib/cpp/include/__bits/thread/threading.hpp (modified) (1 diff)
-
uspace/srv/hid/display/test/window.c (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
abi/include/_bits/decls.h
r78f0422c r71b4444 61 61 #endif /* __cplusplus */ 62 62 63 /*64 * __CONSTEXPR for headers shared by C and C++. Headers that are purely for65 * C++ sources should use constexpr directly.66 */67 #ifdef __cplusplus68 #define __CONSTEXPR constexpr69 #else70 #define __CONSTEXPR71 #endif72 73 63 #endif 74 64 -
abi/include/_bits/uchar.h
r78f0422c r71b4444 38 38 #include <stdint.h> 39 39 40 /*41 * char8_t became part of C++ with C++20.42 * It is part of C23 hence we define it for C compilations only.43 */44 #ifndef __cplusplus45 40 typedef uint8_t char8_t; 46 #endif47 48 41 typedef uint32_t char32_t; 49 42 -
kernel/generic/src/interrupt/interrupt.c
r78f0422c r71b4444 58 58 #include <trace.h> 59 59 60 /*61 * If IVT_ITEMS is zero (e.g. for special/abs32le) we hide completely any62 * access to the exception table array and panic if the function is called63 * at all. It also silences (correct) compiler warnings about possible64 * out-of-bound array access.65 */66 67 60 exc_table_t exc_table[IVT_ITEMS]; 68 61 IRQ_SPINLOCK_INITIALIZE(exctbl_lock); … … 84 77 #if (IVT_ITEMS > 0) 85 78 assert(n < IVT_ITEMS); 79 #endif 86 80 87 81 irq_spinlock_lock(&exctbl_lock, true); … … 97 91 98 92 return old; 99 #else100 panic("No space for any exception handler, cannot register.");101 #endif102 93 } 103 94 … … 112 103 #if (IVT_ITEMS > 0) 113 104 assert(n < IVT_ITEMS); 105 #endif 114 106 115 107 /* Account user cycles */ … … 160 152 irq_spinlock_unlock(&THREAD->lock, false); 161 153 } 162 #else163 panic("No space for any exception handler, yet we want to handle some exception.");164 #endif165 154 } 166 155 -
uspace/app/tester/fault/fault1.c
r78f0422c r71b4444 30 30 #include "../tester.h" 31 31 32 #pragma GCC diagnostic ignored "-Warray-bounds"33 34 32 const char *test_fault1(void) 35 33 { -
uspace/app/tester/print/print5.c
r78f0422c r71b4444 38 38 */ 39 39 #pragma GCC diagnostic ignored "-Wformat" 40 #pragma GCC diagnostic ignored "-Wformat-overflow"41 40 42 41 #include <stdio.h> -
uspace/lib/c/generic/rtld/symbol.c
r78f0422c r71b4444 135 135 modules_untag(start->rtld); 136 136 137 /* 138 * Insert root (the program) into the queue and tag it. 139 * 140 * We disable the dangling-pointer warning because the compiler incorrectly 141 * assumes that we leak local address (queue) to a parent scope (to start 142 * argument). However, we always empty the list so the pointer cannot 143 * actually escape. Probably the compiler can never statically analyze that 144 * correctly. 145 */ 137 /* Insert root (the program) into the queue and tag it */ 146 138 list_initialize(&queue); 147 139 start->bfs_tag = true; 148 #pragma GCC diagnostic push149 #if defined(__GNUC__) && (__GNUC__ >= 12)150 #pragma GCC diagnostic ignored "-Wdangling-pointer"151 #endif152 140 list_append(&start->queue_link, &queue); 153 #pragma GCC diagnostic pop154 141 155 142 /* If the symbol is found, it will be stored in 'sym' */ -
uspace/lib/c/generic/thread/fibril_synch.c
r78f0422c r71b4444 160 160 { 161 161 check_fibril_for_deadlock(oi, fibril_self()); 162 } 163 164 void fibril_mutex_initialize(fibril_mutex_t *fm) 165 { 166 fm->oi.owned_by = NULL; 167 fm->counter = 1; 168 list_initialize(&fm->waiters); 162 169 } 163 170 -
uspace/lib/c/include/adt/list.h
r78f0422c r71b4444 183 183 * 184 184 */ 185 _NO_TRACE static inline __CONSTEXPRvoid list_initialize(list_t *list)185 _NO_TRACE static inline void list_initialize(list_t *list) 186 186 { 187 187 list->head.prev = &list->head; -
uspace/lib/c/include/fibril_synch.h
r78f0422c r71b4444 153 153 extern void __fibril_synch_fini(void); 154 154 155 /** Initialize fibril mutex. 156 * 157 * Kept as in-line to allow constexpr marker for C++ library where this 158 * is used by C++ mutex type (list initialization are two assignments 159 * so it is actually reasonable to have this inlined). 160 */ 161 static inline __CONSTEXPR void fibril_mutex_initialize(fibril_mutex_t *fm) 162 { 163 fm->oi.owned_by = NULL; 164 fm->counter = 1; 165 list_initialize(&fm->waiters); 166 } 167 155 extern void fibril_mutex_initialize(fibril_mutex_t *); 168 156 extern void fibril_mutex_lock(fibril_mutex_t *); 169 157 extern bool fibril_mutex_trylock(fibril_mutex_t *); -
uspace/lib/c/test/string.c
r78f0422c r71b4444 799 799 PCUT_TEST(strndup_nonempty_short) 800 800 { 801 #pragma GCC diagnostic push802 // Intentionally checking it works with _longer_ size than actual803 #if defined(__GNUC__) && (__GNUC__ >= 11)804 #pragma GCC diagnostic ignored "-Wstringop-overread"805 #endif806 801 char *d = strndup("abc", 5); 807 #pragma GCC diagnostic pop808 802 PCUT_ASSERT_NOT_NULL(d); 809 803 PCUT_ASSERT_TRUE(d[0] == 'a'); -
uspace/lib/cpp/include/__bits/algorithm.hpp
r78f0422c r71b4444 1110 1110 InputIterator2 last2) 1111 1111 { 1112 while ((first1 != last1) && (first2 != last2))1113 {1114 if (*first1 < *first2)1115 return true;1116 if (*first2 < *first1)1117 return false;1118 1119 ++first1;1120 ++first2;1121 }1122 1123 1112 /** 1124 * Up until now they are same, so we have to check1125 * if we reached the end on one.1113 * *first1 and *first2 can have different types 1114 * so we use a transparent comparator. 1126 1115 */ 1127 return (first1 == last1) && (first2 != last2); 1116 return lexicographical_compare( 1117 first1, last1, first2, last2, 1118 less<void>{} 1119 ); 1128 1120 } 1129 1121 -
uspace/lib/cpp/include/__bits/thread/threading.hpp
r78f0422c r71b4444 87 87 struct mutex 88 88 { 89 static constexprvoid init(mutex_type& mtx)89 static void init(mutex_type& mtx) 90 90 { 91 91 ::helenos::fibril_mutex_initialize(&mtx); -
uspace/srv/hid/display/test/window.c
r78f0422c r71b4444 1109 1109 PCUT_ASSERT_EQUALS(wnd->display->cursor[dcurs_arrow], wnd->cursor); 1110 1110 1111 // Check that invalid cursors cannot be set: ignore enum conversions1112 // as we are out-of-bounds1113 #pragma GCC diagnostic push1114 #if defined(__GNUC__) && (__GNUC__ >= 10)1115 #pragma GCC diagnostic ignored "-Wenum-conversion"1116 #endif1117 1111 rc = ds_window_set_cursor(wnd, dcurs_limit); 1118 1112 PCUT_ASSERT_ERRNO_VAL(EINVAL, rc); … … 1122 1116 PCUT_ASSERT_ERRNO_VAL(EINVAL, rc); 1123 1117 PCUT_ASSERT_EQUALS(wnd->display->cursor[dcurs_arrow], wnd->cursor); 1124 #pragma GCC diagnostic pop1125 1118 1126 1119 rc = ds_window_set_cursor(wnd, dcurs_size_lr);
Note:
See TracChangeset
for help on using the changeset viewer.
