aboutsummaryrefslogtreecommitdiffstats
path: root/src/dynlib.h
diff options
context:
space:
mode:
authorPaul Eggert2019-04-25 13:21:39 -0700
committerPaul Eggert2019-04-25 13:23:07 -0700
commit69947311d84a2572e8382e401ab97fdab25cb433 (patch)
tree7c14a5e0a0566c9a053a1e99d37a6a076d9996b7 /src/dynlib.h
parentca99c00f7574d72cd6d07dbfe0c3011f033ba5e8 (diff)
downloademacs-69947311d84a2572e8382e401ab97fdab25cb433.tar.gz
emacs-69947311d84a2572e8382e401ab97fdab25cb433.zip
Port to Oracle Developer Studio 12.6
This compiler is a bit pickier about checking conformance to the C standard, ranging from syntax trivia (no extra ";" at the top level) to portability trivia (warnings re conversion between function and data pointers) to more-important stuff like lack of support for some __attribute__ usages. * src/dynlib.c (dynlib_addr): First argument is a function pointer, not a data pointer. All callers changed. * src/emacs-module.c (module_function_address): Return module_funcptr, not void *. All uses changed. * src/lisp.h (module_funcptr) [HAVE_MODULES]: New type. * src/lread.c (union ieee754_double): Don’t assume the usual semantics for converting signed to unsigned int when initializing a bitfield, as the Oracle compiler complains and the C standard is unclear. * src/pdumper.c (ALLOW_IMPLICIT_CONVERSION): Make it clearer that -Wsign-conversion is disabled everywhere in this file. (dump_trace, dump_tailq_prepend, dump_tailq_append): Don’t assume __attribute__. (dump_object_self_representing_p): Don’t disable conversion warnings; it’s not needed here. (DEFINE_FROMLISP_FUNC): Avoid possible signal in integer conversion from unsigned to signed. (DEFINE_FROMLISP_FUNC, finish_dump_pvec): Avoid warning about unreachable statements on platforms not supporting the __attribute__. (intmax_t_from_lisp, intmax_t_to_lisp, dump_off_from_lisp) (dump_off_to_lisp, dump_emacs_reloc_immediate_lv) (dump_emacs_reloc_immediate_ptrdiff_t) (dump_emacs_reloc_immediate_intmax_t) (dump_emacs_reloc_immediate_int, dump_emacs_reloc_immediate_bool): Omit stray semicolon that violates C standard. (dump_metadata_for_pdumper): Add cast to pacify compiler complaining about conversion from function pointer to data pointer. (Fdump_emacs_portable): Do not use CALLN to call a function with zero arguments, as C99 prohibits empty initializers. * src/xdisp.c (syms_of_xdisp): Do not nest calls to pure_list, to work around a bug in Oracle Developer Studio 12.6.
Diffstat (limited to 'src/dynlib.h')
-rw-r--r--src/dynlib.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/dynlib.h b/src/dynlib.h
index 168ddbc32c6..2688712a13e 100644
--- a/src/dynlib.h
+++ b/src/dynlib.h
@@ -35,6 +35,6 @@ dynlib_function_ptr dynlib_func (dynlib_handle_ptr h, const char *sym);
35/* Sets *FILE to the file name from which PTR was loaded, and *SYM to 35/* Sets *FILE to the file name from which PTR was loaded, and *SYM to
36 its symbol name. If the file or symbol name could not be 36 its symbol name. If the file or symbol name could not be
37 determined, set the corresponding argument to NULL. */ 37 determined, set the corresponding argument to NULL. */
38void dynlib_addr (void *ptr, const char **file, const char **sym); 38void dynlib_addr (void (*ptr) (void), const char **file, const char **sym);
39 39
40#endif /* DYNLIB_H */ 40#endif /* DYNLIB_H */