mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-23 10:03:47 +08:00
Introduce opencl_cast_type_operation
This adds class opencl_cast_type_operation, which implements UNOP_CAST_TYPE for OpenCL. gdb/ChangeLog 2021-03-08 Tom Tromey <tom@tromey.com> * opencl-lang.c (opencl_value_cast): No longer static. * c-exp.h (opencl_cast_type_operation): New typedef.
This commit is contained in:
parent
f403a4e4a5
commit
e967770468
@ -1,3 +1,8 @@
|
||||
2021-03-08 Tom Tromey <tom@tromey.com>
|
||||
|
||||
* opencl-lang.c (opencl_value_cast): No longer static.
|
||||
* c-exp.h (opencl_cast_type_operation): New typedef.
|
||||
|
||||
2021-03-08 Tom Tromey <tom@tromey.com>
|
||||
|
||||
* f-exp.h (eval_op_f_allocated): Declare.
|
||||
|
@ -27,6 +27,8 @@ extern struct value *eval_op_objc_selector (struct type *expect_type,
|
||||
struct expression *exp,
|
||||
enum noside noside,
|
||||
const char *sel);
|
||||
extern struct value *opencl_value_cast (struct type *type, struct value *arg);
|
||||
|
||||
namespace expr
|
||||
{
|
||||
|
||||
@ -105,6 +107,9 @@ public:
|
||||
{ return OP_OBJC_MSGCALL; }
|
||||
};
|
||||
|
||||
using opencl_cast_type_operation = cxx_cast_operation<UNOP_CAST_TYPE,
|
||||
opencl_value_cast>;
|
||||
|
||||
}/* namespace expr */
|
||||
|
||||
#endif /* C_EXP_H */
|
||||
|
@ -27,6 +27,7 @@
|
||||
#include "varobj.h"
|
||||
#include "c-lang.h"
|
||||
#include "gdbarch.h"
|
||||
#include "c-exp.h"
|
||||
|
||||
/* Returns the corresponding OpenCL vector type from the given type code,
|
||||
the length of the element type, the unsigned flag and the amount of
|
||||
@ -581,7 +582,7 @@ vector_relop (struct expression *exp, struct value *val1, struct value *val2,
|
||||
behaviour of scalar to vector casting. As far as possibly we're going
|
||||
to try and delegate back to the standard value_cast function. */
|
||||
|
||||
static struct value *
|
||||
struct value *
|
||||
opencl_value_cast (struct type *type, struct value *arg)
|
||||
{
|
||||
if (type != value_type (arg))
|
||||
|
Loading…
Reference in New Issue
Block a user