emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r108973: Add GCC-style 'const' attrib


From: Paul Eggert
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r108973: Add GCC-style 'const' attribute to functions that can use it.
Date: Mon, 09 Jul 2012 09:38:45 -0700
User-agent: Bazaar (2.5.0)

------------------------------------------------------------
revno: 108973
committer: Paul Eggert <address@hidden>
branch nick: trunk
timestamp: Mon 2012-07-09 09:38:45 -0700
message:
  Add GCC-style 'const' attribute to functions that can use it.
modified:
  ChangeLog
  configure.ac
  lib-src/ChangeLog
  lib-src/etags.c
  nt/ChangeLog
  nt/config.nt
  src/ChangeLog
  src/character.h
  src/emacs.c
  src/keyboard.h
  src/lisp.h
  src/mem-limits.h
  src/menu.h
=== modified file 'ChangeLog'
--- a/ChangeLog 2012-07-09 15:37:43 +0000
+++ b/ChangeLog 2012-07-09 16:38:45 +0000
@@ -1,3 +1,9 @@
+2012-07-09  Paul Eggert  <address@hidden>
+
+       Add GCC-style 'const' attribute to functions that can use it.
+       * configure.ac (WARN_CFLAGS): Add -Wsuggest-attribute=const.
+       (ATTRIBUTE_CONST): New macro, in config.h.
+
 2012-07-09  Juanma Barranquero  <address@hidden>
 
        * lib/makefile.w32-in: Rework dependencies.

=== modified file 'configure.ac'
--- a/configure.ac      2012-07-09 04:52:49 +0000
+++ b/configure.ac      2012-07-09 16:38:45 +0000
@@ -683,7 +683,6 @@
   # The following lines should be removable at some point.
   nw="$nw -Wstack-protector"
   nw="$nw -Wstrict-overflow"
-  nw="$nw -Wsuggest-attribute=const"
   nw="$nw -Wsuggest-attribute=pure"
 
   gl_MANYWARN_ALL_GCC([ws])
@@ -3636,6 +3635,8 @@
    ATTRIBUTE_FORMAT ((__printf__, formatstring_parameter, first_argument))
 #endif
 
+#define ATTRIBUTE_CONST _GL_ATTRIBUTE_CONST
+
 /* Some versions of GNU/Linux define noinline in their headers.  */
 #ifdef noinline
 #undef noinline

=== modified file 'lib-src/ChangeLog'
--- a/lib-src/ChangeLog 2012-07-09 14:01:41 +0000
+++ b/lib-src/ChangeLog 2012-07-09 16:38:45 +0000
@@ -1,3 +1,8 @@
+2012-07-09  Paul Eggert  <address@hidden>
+
+       Add GCC-style 'const' attribute to functions that can use it.
+       * etags.c (number_len): Add ATTRIBUTE_CONST.
+
 2012-07-09  Juanma Barranquero  <address@hidden>
 
        * emacsclient.c (w32_execvp): Declare execvp to silence the compiler.

=== modified file 'lib-src/etags.c'
--- a/lib-src/etags.c   2012-07-06 21:07:46 +0000
+++ b/lib-src/etags.c   2012-07-09 16:38:45 +0000
@@ -2123,7 +2123,7 @@
 
 
 static int total_size_of_entries (node *);
-static int number_len (long);
+static int number_len (long) ATTRIBUTE_CONST;
 
 /* Length of a non-negative number's decimal representation. */
 static int

=== modified file 'nt/ChangeLog'
--- a/nt/ChangeLog      2012-07-09 13:40:34 +0000
+++ b/nt/ChangeLog      2012-07-09 16:38:45 +0000
@@ -1,3 +1,7 @@
+2012-07-09  Paul Eggert  <address@hidden>
+
+       * config.nt (ATTRIBUTE_CONST): Add, to sync with configure.ac.
+
 2012-07-09  Juanma Barranquero  <address@hidden>
 
        * config.nt: Sync with autogen/config.in.

=== modified file 'nt/config.nt'
--- a/nt/config.nt      2012-07-09 13:40:34 +0000
+++ b/nt/config.nt      2012-07-09 16:38:45 +0000
@@ -1501,6 +1501,8 @@
    ATTRIBUTE_FORMAT ((__printf__, formatstring_parameter, first_argument))
 #endif
 
+#define ATTRIBUTE_CONST _GL_ATTRIBUTE_CONST
+
 /* Some versions of GNU/Linux define noinline in their headers.  */
 #ifdef noinline
 #undef noinline

=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2012-07-09 16:06:19 +0000
+++ b/src/ChangeLog     2012-07-09 16:38:45 +0000
@@ -1,5 +1,19 @@
 2012-07-09  Paul Eggert  <address@hidden>
 
+       Add GCC-style 'const' attribute to functions that can use it.
+       * character.h (char_resolve_modifier_mask):
+       * keyboard.h (make_ctrl_char):
+       * lisp.h (multibyte_char_to_unibyte, multibyte_char_to_unibyte_safe)
+       (init_character_once, next_almost_prime, init_fns, init_image)
+       (flush_pending_output, init_sound):
+       * mem-limits.h (start_of_data):
+       * menu.h (finish_menu_items):
+       Add ATTRIBUTE_CONST.
+       * emacs.c (DEFINE_DUMMY_FUNCTION):
+       Declare the dummy function with ATTRIBUTE_CONST.
+       * lisp.h (Fbyteorder, Fmax_char, Fidentity):
+       Add decls with ATTRIBUTE_CONST.
+
        Minor improvements to make_formatted_string.
        * alloc.c (make_formatted_string): Prefer int to ptrdiff_t
        where int is good enough, as vsprintf returns an int.

=== modified file 'src/character.h'
--- a/src/character.h   2012-05-25 18:19:24 +0000
+++ b/src/character.h   2012-07-09 16:38:45 +0000
@@ -665,7 +665,7 @@
   UNICODE_CATEGORY_Cn
 } unicode_category_t;
 
-extern EMACS_INT char_resolve_modifier_mask (EMACS_INT);
+extern EMACS_INT char_resolve_modifier_mask (EMACS_INT) ATTRIBUTE_CONST;
 extern int char_string (unsigned, unsigned char *);
 extern int string_char (const unsigned char *,
                         const unsigned char **, int *);

=== modified file 'src/emacs.c'
--- a/src/emacs.c       2012-07-05 18:35:48 +0000
+++ b/src/emacs.c       2012-07-09 16:38:45 +0000
@@ -569,7 +569,7 @@
 /* Define a dummy function F.  Declare F too, to pacify gcc
    -Wmissing-prototypes.  */
 #define DEFINE_DUMMY_FUNCTION(f) \
-  void f (void) EXTERNALLY_VISIBLE; void f (void) {}
+  void f (void) ATTRIBUTE_CONST EXTERNALLY_VISIBLE; void f (void) {}
 
 #ifndef GCC_CTORS_IN_LIBC
 DEFINE_DUMMY_FUNCTION (__do_global_ctors)

=== modified file 'src/keyboard.h'
--- a/src/keyboard.h    2012-02-10 18:58:48 +0000
+++ b/src/keyboard.h    2012-07-09 16:38:45 +0000
@@ -487,7 +487,7 @@
 extern void clear_input_pending (void);
 extern int requeued_events_pending_p (void);
 extern void bind_polling_period (int);
-extern int make_ctrl_char (int);
+extern int make_ctrl_char (int) ATTRIBUTE_CONST;
 extern void stuff_buffered_input (Lisp_Object);
 extern void clear_waiting_for_input (void);
 extern void swallow_events (int);

=== modified file 'src/lisp.h'
--- a/src/lisp.h        2012-07-09 16:06:19 +0000
+++ b/src/lisp.h        2012-07-09 16:38:45 +0000
@@ -2336,6 +2336,8 @@
 
 extern Lisp_Object Qfont_spec, Qfont_entity, Qfont_object;
 
+EXFUN (Fbyteorder, 0) ATTRIBUTE_CONST;
+
 /* Defined in frame.c */
 extern Lisp_Object Qframep;
 
@@ -2395,11 +2397,12 @@
 extern void syms_of_coding (void);
 
 /* Defined in character.c */
+EXFUN (Fmax_char, 0) ATTRIBUTE_CONST;
 extern ptrdiff_t chars_in_text (const unsigned char *, ptrdiff_t);
 extern ptrdiff_t multibyte_chars_in_text (const unsigned char *, ptrdiff_t);
-extern int multibyte_char_to_unibyte (int);
-extern int multibyte_char_to_unibyte_safe (int);
-extern void init_character_once (void);
+extern int multibyte_char_to_unibyte (int) ATTRIBUTE_CONST;
+extern int multibyte_char_to_unibyte_safe (int) ATTRIBUTE_CONST;
+extern void init_character_once (void) ATTRIBUTE_CONST;
 extern void syms_of_character (void);
 
 /* Defined in charset.c */
@@ -2419,7 +2422,8 @@
 /* Defined in fns.c */
 extern Lisp_Object QCrehash_size, QCrehash_threshold;
 enum { NEXT_ALMOST_PRIME_LIMIT = 11 };
-extern EMACS_INT next_almost_prime (EMACS_INT);
+EXFUN (Fidentity, 1) ATTRIBUTE_CONST;
+extern EMACS_INT next_almost_prime (EMACS_INT) ATTRIBUTE_CONST;
 extern Lisp_Object larger_vector (Lisp_Object, ptrdiff_t, ptrdiff_t);
 extern void sweep_weak_hash_tables (void);
 extern Lisp_Object Qcursor_in_echo_area;
@@ -2434,7 +2438,7 @@
 ptrdiff_t hash_put (struct Lisp_Hash_Table *, Lisp_Object, Lisp_Object,
                    EMACS_UINT);
 void init_weak_hash_tables (void);
-extern void init_fns (void);
+extern void init_fns (void) ATTRIBUTE_CONST;
 
 extern Lisp_Object substring_both (Lisp_Object, ptrdiff_t, ptrdiff_t,
                                   ptrdiff_t, ptrdiff_t);
@@ -2470,7 +2474,7 @@
 extern Lisp_Object QCconversion;
 extern int x_bitmap_mask (struct frame *, ptrdiff_t);
 extern void syms_of_image (void);
-extern void init_image (void);
+extern void init_image (void) ATTRIBUTE_CONST;
 
 /* Defined in insdel.c */
 extern Lisp_Object Qinhibit_modification_hooks;
@@ -3119,7 +3123,7 @@
 extern void reset_all_sys_modes (void);
 extern void wait_for_termination (pid_t);
 extern void interruptible_wait_for_termination (pid_t);
-extern void flush_pending_output (int);
+extern void flush_pending_output (int) ATTRIBUTE_CONST;
 extern void child_setup_tty (int);
 extern void setup_pty (int);
 extern int set_window_size (int, int, int);
@@ -3141,7 +3145,7 @@
 
 /* Defined in sound.c */
 extern void syms_of_sound (void);
-extern void init_sound (void);
+extern void init_sound (void) ATTRIBUTE_CONST;
 
 /* Defined in category.c */
 extern void init_category_once (void);

=== modified file 'src/mem-limits.h'
--- a/src/mem-limits.h  2012-06-13 00:26:40 +0000
+++ b/src/mem-limits.h  2012-07-09 16:38:45 +0000
@@ -33,7 +33,7 @@
 # endif
 #endif
 
-extern char *start_of_data (void);
+extern char *start_of_data (void) ATTRIBUTE_CONST;
 #if USE_LSB_TAG || UINTPTR_MAX <= VAL_MAX
 #define EXCEEDS_LISP_PTR(ptr) 0
 #elif defined DATA_SEG_BITS

=== modified file 'src/menu.h'
--- a/src/menu.h        2012-01-19 07:21:25 +0000
+++ b/src/menu.h        2012-07-09 16:38:45 +0000
@@ -26,7 +26,7 @@
                                   Lisp_Object oldval);
 
 extern void init_menu_items (void);
-extern void finish_menu_items (void);
+extern void finish_menu_items (void) ATTRIBUTE_CONST;
 extern void discard_menu_items (void);
 extern void save_menu_items (void);
 extern int parse_single_submenu (Lisp_Object, Lisp_Object, Lisp_Object);


reply via email to

[Prev in Thread] Current Thread [Next in Thread]