3 Test that we can't set the initializer on a global twice.
10 #include "libgccjit.h"
14 create_code (gcc_jit_context
*ctxt
, void *user_data
)
16 gcc_jit_type
*int_type
= gcc_jit_context_get_type (ctxt
, GCC_JIT_TYPE_INT
);
18 gcc_jit_lvalue
*bar
= gcc_jit_context_new_global (
20 GCC_JIT_GLOBAL_EXPORTED
,
22 "global_lvalueinit_int_0");
24 gcc_jit_global_set_initializer_rvalue (
26 gcc_jit_context_new_rvalue_from_int (ctxt
, int_type
, 1));
27 gcc_jit_global_set_initializer_rvalue (
29 gcc_jit_context_new_rvalue_from_int (ctxt
, int_type
, 1));
33 verify_code (gcc_jit_context
*ctxt
, gcc_jit_result
*result
)
35 /* Ensure that the bad API usage prevents the API giving a bogus
37 CHECK_VALUE (result
, NULL
);
39 /* Verify that the correct error message was emitted. */
40 CHECK_STRING_VALUE (gcc_jit_context_get_first_error (ctxt
),
41 "gcc_jit_global_set_initializer_rvalue: global variable "
42 "already initialized: global_lvalueinit_int_0");
43 CHECK_STRING_VALUE (gcc_jit_context_get_last_error (ctxt
),
44 "gcc_jit_global_set_initializer_rvalue: global variable "
45 "already initialized: global_lvalueinit_int_0");