mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-24 04:00:07 +08:00
sim: common: replace SIM_FILTER_PATH with lbasename
This helper macro has largely the same behavior as libiberty's lbasename. There is a slight nuance related to colons, but it's not clear what the point of that is, and the code implies that it just wants the basename.
This commit is contained in:
@ -21,21 +21,6 @@
|
||||
#ifndef SIM_ASSERT_H
|
||||
#define SIM_ASSERT_H
|
||||
|
||||
#define SIM_FILTER_PATH(FILE, PATH) \
|
||||
do \
|
||||
{ \
|
||||
/* strip leading path */ \
|
||||
const char *p = (PATH); \
|
||||
(FILE) = p; \
|
||||
while (*p != '\0' && *p != ':') \
|
||||
{ \
|
||||
if (*p == '/') \
|
||||
(FILE) = p + 1; \
|
||||
p++; \
|
||||
} \
|
||||
} \
|
||||
while (0)
|
||||
|
||||
/* The subtle difference between SIM_ASSERT and ASSERT is that
|
||||
SIM_ASSERT passes `sd' to sim_io_error for the SIM_DESC,
|
||||
ASSERT passes NULL. */
|
||||
@ -43,6 +28,7 @@ while (0)
|
||||
#if !defined (SIM_ASSERT)
|
||||
#if defined (WITH_ASSERT)
|
||||
#include "sim-io.h"
|
||||
#include "libiberty.h"
|
||||
#define SIM_ASSERT(EXPRESSION) \
|
||||
do \
|
||||
{ \
|
||||
@ -51,10 +37,8 @@ do \
|
||||
if (!(EXPRESSION)) \
|
||||
{ \
|
||||
/* report the failure */ \
|
||||
const char *file; \
|
||||
SIM_FILTER_PATH(file, __FILE__); \
|
||||
sim_io_error (sd, "%s:%d: assertion failed - %s", \
|
||||
file, __LINE__, #EXPRESSION); \
|
||||
lbasename (__FILE__), __LINE__, #EXPRESSION); \
|
||||
} \
|
||||
} \
|
||||
} \
|
||||
@ -67,6 +51,7 @@ while (0)
|
||||
#if !defined (ASSERT)
|
||||
#if defined (WITH_ASSERT)
|
||||
#include "sim-io.h"
|
||||
#include "libiberty.h"
|
||||
#define ASSERT(EXPRESSION) \
|
||||
do \
|
||||
{ \
|
||||
@ -75,10 +60,8 @@ do \
|
||||
if (!(EXPRESSION)) \
|
||||
{ \
|
||||
/* report the failure */ \
|
||||
const char *file; \
|
||||
SIM_FILTER_PATH(file, __FILE__); \
|
||||
sim_io_error (NULL, "%s:%d: assertion failed - %s", \
|
||||
file, __LINE__, #EXPRESSION); \
|
||||
lbasename (__FILE__), __LINE__, #EXPRESSION); \
|
||||
} \
|
||||
} \
|
||||
} \
|
||||
|
Reference in New Issue
Block a user