Skip to content

Commit 5ef6728

Browse files
committed
Splitting MBED_ERROR macros to support ones with/without error value argument
1 parent 693a6c4 commit 5ef6728

File tree

12 files changed

+99
-91
lines changed

12 files changed

+99
-91
lines changed

TESTS/mbed_platform/error_handling/main.cpp

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ void test_error_count_and_reset()
3030

3131
//Log multiple errors and get the error count and make sure its 15
3232
for(int i=0; i<count; i++) {
33-
MBED_WARNING(MBED_ERROR_OUT_OF_MEMORY, "Out of memory", i);
33+
MBED_WARNING1(MBED_ERROR_OUT_OF_MEMORY, "Out of memory", i);
3434
}
3535

3636
TEST_ASSERT_EQUAL_INT(count, mbed_get_error_count());
@@ -53,28 +53,28 @@ void test_error_capturing()
5353

5454
//first clear all errors and start afresh
5555

56-
MBED_WARNING(MBED_ERROR_OUT_OF_RESOURCES, "System type error", 0x1100 );
56+
MBED_WARNING1(MBED_ERROR_OUT_OF_RESOURCES, "System type error", 0x1100 );
5757
mbed_error_status_t lastError = mbed_get_last_error();
5858
TEST_ASSERT_EQUAL_UINT(MBED_ERROR_TYPE_SYSTEM, MBED_GET_ERROR_TYPE(lastError));
5959
TEST_ASSERT_EQUAL_UINT(MBED_MODULE_UNKNOWN, MBED_GET_ERROR_MODULE(lastError));
6060
TEST_ASSERT_EQUAL_UINT(MBED_ERROR_CODE_OUT_OF_RESOURCES, MBED_GET_ERROR_CODE(lastError));
6161

6262
mbed_error_status_t error = MBED_MAKE_ERROR(MBED_MODULE_DRIVER_SERIAL, MBED_ERROR_CODE_OUT_OF_RESOURCES);
63-
MBED_WARNING(error, "Error Serial", 0xAA );
63+
MBED_WARNING1(error, "Error Serial", 0xAA );
6464
lastError = mbed_get_last_error();
6565
TEST_ASSERT_EQUAL_UINT(error, lastError);
6666

6767
error = MBED_MAKE_CUSTOM_ERROR(MBED_MODULE_APPLICATION, MBED_ERROR_CODE_UNKNOWN);
68-
MBED_WARNING(error, "Custom Error Unknown", 0x1234 );
68+
MBED_WARNING1(error, "Custom Error Unknown", 0x1234 );
6969
lastError = mbed_get_last_error();
7070
TEST_ASSERT_EQUAL_UINT(error, lastError);
7171

72-
MBED_WARNING(MBED_ERROR_EPERM, "Posix Error Eperm", 0x1234 );
72+
MBED_WARNING1(MBED_ERROR_EPERM, "Posix Error Eperm", 0x1234 );
7373
lastError = mbed_get_last_error();
7474
TEST_ASSERT_EQUAL_UINT(MBED_ERROR_EPERM, lastError);
7575

7676
error = MBED_MAKE_CUSTOM_ERROR(MBED_MODULE_PLATFORM, MBED_ERROR_CODE_CREATE_FAILED);
77-
MBED_WARNING(error, "Custom Error Type", error_value);
77+
MBED_WARNING1(error, "Custom Error Type", error_value);
7878
lastError = mbed_get_last_error();
7979
TEST_ASSERT_EQUAL_UINT(MBED_ERROR_TYPE_CUSTOM, MBED_GET_ERROR_TYPE(lastError));
8080
TEST_ASSERT_EQUAL_UINT(MBED_MODULE_PLATFORM, MBED_GET_ERROR_MODULE(lastError));
@@ -84,7 +84,7 @@ void test_error_capturing()
8484
TEST_ASSERT_EQUAL_UINT(error_value, error_ctx.error_value);
8585

8686
error_value = 0xAABBCC;
87-
MBED_WARNING(MBED_ERROR_EACCES, "Posix Error", error_value );
87+
MBED_WARNING1(MBED_ERROR_EACCES, "Posix Error", error_value );
8888
lastError = mbed_get_last_error();
8989
TEST_ASSERT_EQUAL_UINT(MBED_ERROR_TYPE_POSIX, MBED_GET_ERROR_TYPE(lastError));
9090
TEST_ASSERT_EQUAL_UINT(MBED_MODULE_UNKNOWN, MBED_GET_ERROR_MODULE(lastError));
@@ -95,7 +95,7 @@ void test_error_capturing()
9595

9696
error_value = 0;
9797
error = MBED_MAKE_ERROR(MBED_MODULE_HAL, MBED_ERROR_CODE_UNKNOWN);
98-
MBED_WARNING(error, "HAL Entity error", error_value );
98+
MBED_WARNING1(error, "HAL Entity error", error_value );
9999
lastError = mbed_get_last_error();
100100
TEST_ASSERT_EQUAL_UINT(MBED_ERROR_TYPE_SYSTEM, MBED_GET_ERROR_TYPE(lastError));
101101
TEST_ASSERT_EQUAL_UINT(MBED_MODULE_HAL, MBED_GET_ERROR_MODULE(lastError));
@@ -104,7 +104,7 @@ void test_error_capturing()
104104
TEST_ASSERT(status == MBED_SUCCESS);
105105
TEST_ASSERT_EQUAL_UINT(error_value, error_ctx.error_value);
106106

107-
MBED_WARNING(MBED_ERROR_MUTEX_LOCK_FAILED, "Mutex lock failed", 0x4455 );
107+
MBED_WARNING1(MBED_ERROR_MUTEX_LOCK_FAILED, "Mutex lock failed", 0x4455 );
108108
error = mbed_get_last_error();
109109
TEST_ASSERT_EQUAL_UINT(MBED_ERROR_MUTEX_LOCK_FAILED, error);
110110

@@ -120,7 +120,7 @@ void test_error_context_capture()
120120
uint32_t error_value = 0xABCD;
121121
mbed_error_ctx error_ctx = {0};
122122

123-
MBED_WARNING(MBED_ERROR_INVALID_ARGUMENT, "System type error", error_value );
123+
MBED_WARNING1(MBED_ERROR_INVALID_ARGUMENT, "System type error", error_value );
124124
mbed_error_status_t status = mbed_get_last_error_info( &error_ctx );
125125
TEST_ASSERT(status == MBED_SUCCESS);
126126
TEST_ASSERT_EQUAL_UINT(error_value, error_ctx.error_value);
@@ -147,9 +147,9 @@ void test_error_logging()
147147
mbed_clear_all_errors();
148148

149149
//log 3 errors and retrieve them to ensure they are correct
150-
MBED_WARNING(MBED_ERROR_INVALID_ARGUMENT, "Invalid argument", 1 );
151-
MBED_WARNING(MBED_ERROR_INVALID_SIZE, "Invalid size", 2 );
152-
MBED_WARNING(MBED_ERROR_INVALID_FORMAT, "Invalid format", 3 );
150+
MBED_WARNING1(MBED_ERROR_INVALID_ARGUMENT, "Invalid argument", 1 );
151+
MBED_WARNING1(MBED_ERROR_INVALID_SIZE, "Invalid size", 2 );
152+
MBED_WARNING1(MBED_ERROR_INVALID_FORMAT, "Invalid format", 3 );
153153

154154
mbed_error_status_t status = mbed_get_error_hist_info( 0, &error_ctx );
155155
TEST_ASSERT_EQUAL_UINT(MBED_ERROR_INVALID_ARGUMENT, error_ctx.error_status);
@@ -164,16 +164,16 @@ void test_error_logging()
164164
TEST_ASSERT_EQUAL_UINT(3, error_ctx.error_value);
165165

166166
//Log a bunch of errors to overflow the error log and retrieve them
167-
MBED_WARNING(MBED_ERROR_INVALID_ARGUMENT, "Invalid argument", 6 );
168-
MBED_WARNING(MBED_ERROR_INVALID_SIZE, "Invalid size", 7 );
169-
MBED_WARNING(MBED_ERROR_INVALID_FORMAT, "Invalid format", 8 );
170-
MBED_WARNING(MBED_ERROR_NOT_READY, "Not ready error", 9 );
167+
MBED_WARNING1(MBED_ERROR_INVALID_ARGUMENT, "Invalid argument", 6 );
168+
MBED_WARNING1(MBED_ERROR_INVALID_SIZE, "Invalid size", 7 );
169+
MBED_WARNING1(MBED_ERROR_INVALID_FORMAT, "Invalid format", 8 );
170+
MBED_WARNING1(MBED_ERROR_NOT_READY, "Not ready error", 9 );
171171

172172
//Last 4 entries
173-
MBED_WARNING(MBED_ERROR_TIME_OUT, "Timeout error", 10 );
174-
MBED_WARNING(MBED_ERROR_ALREADY_IN_USE, "Already in use error", 11 );
175-
MBED_WARNING(MBED_ERROR_UNSUPPORTED, "Not supported", 12 );
176-
MBED_WARNING(MBED_ERROR_ACCESS_DENIED, "Access denied", 13 );
173+
MBED_WARNING1(MBED_ERROR_TIME_OUT, "Timeout error", 10 );
174+
MBED_WARNING1(MBED_ERROR_ALREADY_IN_USE, "Already in use error", 11 );
175+
MBED_WARNING1(MBED_ERROR_UNSUPPORTED, "Not supported", 12 );
176+
MBED_WARNING1(MBED_ERROR_ACCESS_DENIED, "Access denied", 13 );
177177

178178
status = mbed_get_error_hist_info( 0, &error_ctx );
179179
TEST_ASSERT_EQUAL_UINT(MBED_ERROR_TIME_OUT, error_ctx.error_status);
@@ -202,7 +202,7 @@ void test_error_logging()
202202
//Error logger threads
203203
void err_thread_func(mbed_error_status_t *error_status)
204204
{
205-
MBED_WARNING(*error_status, "Error from Multi-Threaded error logging test", *error_status );
205+
MBED_WARNING1(*error_status, "Error from Multi-Threaded error logging test", *error_status );
206206
}
207207

208208

@@ -254,7 +254,7 @@ void test_error_hook()
254254
TEST_FAIL();
255255
}
256256

257-
MBED_WARNING(MBED_ERROR_INVALID_ARGUMENT, "Test for error hook", 1234);
257+
MBED_WARNING1(MBED_ERROR_INVALID_ARGUMENT, "Test for error hook", 1234);
258258
int32_t sem_status = callback_sem.wait(5000);
259259

260260
TEST_ASSERT(sem_status > 0);
@@ -295,11 +295,11 @@ MBED_TEST_SIM_BLOCKDEVICE_DECL;
295295
void test_save_error_log()
296296
{
297297
//Log some errors
298-
MBED_WARNING(MBED_ERROR_TIME_OUT, "Timeout error", 1 );
299-
MBED_WARNING(MBED_ERROR_ALREADY_IN_USE, "Already in use error", 2 );
300-
MBED_WARNING(MBED_ERROR_UNSUPPORTED, "Not supported error", 3 );
301-
MBED_WARNING(MBED_ERROR_ACCESS_DENIED, "Access denied error", 4 );
302-
MBED_WARNING(MBED_ERROR_ITEM_NOT_FOUND, "Not found error", 5 );
298+
MBED_WARNING1(MBED_ERROR_TIME_OUT, "Timeout error", 1 );
299+
MBED_WARNING1(MBED_ERROR_ALREADY_IN_USE, "Already in use error", 2 );
300+
MBED_WARNING1(MBED_ERROR_UNSUPPORTED, "Not supported error", 3 );
301+
MBED_WARNING1(MBED_ERROR_ACCESS_DENIED, "Access denied error", 4 );
302+
MBED_WARNING1(MBED_ERROR_ITEM_NOT_FOUND, "Not found error", 5 );
303303

304304
int error = 0;
305305

features/filesystem/bd/ReadOnlyBlockDevice.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,13 +57,13 @@ int ReadOnlyBlockDevice::read(void *buffer, bd_addr_t addr, bd_size_t size)
5757

5858
int ReadOnlyBlockDevice::program(const void *buffer, bd_addr_t addr, bd_size_t size)
5959
{
60-
MBED_ERROR(MBED_MAKE_ERROR(MBED_MODULE_BLOCK_DEVICE, MBED_ERROR_CODE_WRITE_PROTECTED), "ReadOnlyBlockDevice::program() not allowed", addr);
60+
MBED_ERROR1(MBED_MAKE_ERROR(MBED_MODULE_BLOCK_DEVICE, MBED_ERROR_CODE_WRITE_PROTECTED), "ReadOnlyBlockDevice::program() not allowed", addr);
6161
return MBED_ERROR_WRITE_PROTECTED;
6262
}
6363

6464
int ReadOnlyBlockDevice::erase(bd_addr_t addr, bd_size_t size)
6565
{
66-
MBED_ERROR(MBED_MAKE_ERROR(MBED_MODULE_BLOCK_DEVICE, MBED_ERROR_CODE_WRITE_PROTECTED), "ReadOnlyBlockDevice::erase() not allowed", addr);
66+
MBED_ERROR1(MBED_MAKE_ERROR(MBED_MODULE_BLOCK_DEVICE, MBED_ERROR_CODE_WRITE_PROTECTED), "ReadOnlyBlockDevice::erase() not allowed", addr);
6767
return MBED_ERROR_WRITE_PROTECTED;
6868
}
6969

hal/mbed_pinmap_common.c

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ void pinmap_pinout(PinName pin, const PinMap *map) {
2929
}
3030
map++;
3131
}
32-
MBED_ERROR(MBED_MAKE_ERROR(MBED_MODULE_PLATFORM, MBED_ERROR_CODE_PINMAP_INVALID), "could not pinout", pin);
32+
MBED_ERROR1(MBED_MAKE_ERROR(MBED_MODULE_PLATFORM, MBED_ERROR_CODE_PINMAP_INVALID), "could not pinout", pin);
3333
}
3434

3535
uint32_t pinmap_merge(uint32_t a, uint32_t b) {
@@ -44,7 +44,7 @@ uint32_t pinmap_merge(uint32_t a, uint32_t b) {
4444
return a;
4545

4646
// mis-match error case
47-
MBED_ERROR(MBED_MAKE_ERROR(MBED_MODULE_PLATFORM, MBED_ERROR_CODE_PINMAP_INVALID), "pinmap mis-match", a);
47+
MBED_ERROR1(MBED_MAKE_ERROR(MBED_MODULE_PLATFORM, MBED_ERROR_CODE_PINMAP_INVALID), "pinmap mis-match", a);
4848
return (uint32_t)NC;
4949
}
5050

@@ -64,7 +64,7 @@ uint32_t pinmap_peripheral(PinName pin, const PinMap* map) {
6464
return (uint32_t)NC;
6565
peripheral = pinmap_find_peripheral(pin, map);
6666
if ((uint32_t)NC == peripheral) // no mapping available
67-
MBED_ERROR(MBED_MAKE_ERROR(MBED_MODULE_PLATFORM, MBED_ERROR_CODE_PINMAP_INVALID), "pinmap not found for peripheral", peripheral);
67+
MBED_ERROR1(MBED_MAKE_ERROR(MBED_MODULE_PLATFORM, MBED_ERROR_CODE_PINMAP_INVALID), "pinmap not found for peripheral", peripheral);
6868
return peripheral;
6969
}
7070

@@ -84,6 +84,6 @@ uint32_t pinmap_function(PinName pin, const PinMap* map) {
8484
return (uint32_t)NC;
8585
function = pinmap_find_function(pin, map);
8686
if ((uint32_t)NC == function) // no mapping available
87-
MBED_ERROR(MBED_MAKE_ERROR(MBED_MODULE_PLATFORM, MBED_ERROR_CODE_PINMAP_INVALID), "pinmap not found for function", function);
87+
MBED_ERROR1(MBED_MAKE_ERROR(MBED_MODULE_PLATFORM, MBED_ERROR_CODE_PINMAP_INVALID), "pinmap not found for function", function);
8888
return function;
8989
}

hal/mbed_sleep_manager.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -161,7 +161,7 @@ void sleep_manager_lock_deep_sleep_internal(void)
161161
core_util_critical_section_enter();
162162
if (deep_sleep_lock == USHRT_MAX) {
163163
core_util_critical_section_exit();
164-
MBED_ERROR(MBED_MAKE_ERROR(MBED_MODULE_HAL, MBED_ERROR_CODE_OVERFLOW), "DeepSleepLock overflow (> USHRT_MAX)", deep_sleep_lock);
164+
MBED_ERROR1(MBED_MAKE_ERROR(MBED_MODULE_HAL, MBED_ERROR_CODE_OVERFLOW), "DeepSleepLock overflow (> USHRT_MAX)", deep_sleep_lock);
165165
}
166166
core_util_atomic_incr_u16(&deep_sleep_lock, 1);
167167
core_util_critical_section_exit();
@@ -172,7 +172,7 @@ void sleep_manager_unlock_deep_sleep_internal(void)
172172
core_util_critical_section_enter();
173173
if (deep_sleep_lock == 0) {
174174
core_util_critical_section_exit();
175-
MBED_ERROR(MBED_MAKE_ERROR(MBED_MODULE_HAL, MBED_ERROR_CODE_UNDERFLOW), "DeepSleepLock underflow (< 0)", deep_sleep_lock);
175+
MBED_ERROR1(MBED_MAKE_ERROR(MBED_MODULE_HAL, MBED_ERROR_CODE_UNDERFLOW), "DeepSleepLock underflow (< 0)", deep_sleep_lock);
176176
}
177177
core_util_atomic_decr_u16(&deep_sleep_lock, 1);
178178
core_util_critical_section_exit();

platform/DeepSleepLock.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ class DeepSleepLock {
6969
sleep_manager_lock_deep_sleep();
7070
}
7171
if (0 == count) {
72-
MBED_ERROR(MBED_MAKE_ERROR(MBED_MODULE_PLATFORM, MBED_ERROR_CODE_OVERFLOW), "DeepSleepLock overflow (> USHRT_MAX)", count);
72+
MBED_ERROR1(MBED_MAKE_ERROR(MBED_MODULE_PLATFORM, MBED_ERROR_CODE_OVERFLOW), "DeepSleepLock overflow (> USHRT_MAX)", count);
7373
}
7474
}
7575

@@ -83,7 +83,7 @@ class DeepSleepLock {
8383
}
8484
if (count == USHRT_MAX) {
8585
core_util_critical_section_exit();
86-
MBED_ERROR(MBED_MAKE_ERROR(MBED_MODULE_PLATFORM, MBED_ERROR_CODE_UNDERFLOW), "DeepSleepLock underflow (< 0)", count);
86+
MBED_ERROR1(MBED_MAKE_ERROR(MBED_MODULE_PLATFORM, MBED_ERROR_CODE_UNDERFLOW), "DeepSleepLock underflow (< 0)", count);
8787
}
8888
}
8989
};

platform/Stream.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ Stream::Stream(const char *name) : FileLike(name), _file(NULL) {
2929
if (_file) {
3030
mbed_set_unbuffered_stream(_file);
3131
} else {
32-
MBED_ERROR(MBED_MAKE_ERROR(MBED_MODULE_PLATFORM, MBED_ERROR_CODE_OPEN_FAILED), "Stream obj failure", _file);
32+
MBED_ERROR1(MBED_MAKE_ERROR(MBED_MODULE_PLATFORM, MBED_ERROR_CODE_OPEN_FAILED), "Stream obj failure", _file);
3333
}
3434
}
3535

platform/mbed_error.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ WEAK void error(const char* format, ...) {
7878
va_list arg;
7979
va_start(arg, format);
8080
mbed_error_vfprintf(format, arg);
81-
MBED_ERROR(MBED_ERROR_UNKNOWN, "Fatal Run-time Error", 0);
81+
MBED_ERROR(MBED_ERROR_UNKNOWN, "Fatal Run-time Error");
8282
va_end(arg);
8383
#endif
8484
exit(1);

0 commit comments

Comments
 (0)