src/libpspp/compiler.h.
In many source files, #include "compiler.h" to get GCC attribute
definitions.
+Sat Mar 4 12:58:34 2006 Ben Pfaff <blp@gnu.org>
+
+ * pref.h.orig: Move GCC attribute declarations to
+ new file src/libpspp/compiler.h.
+
Sat Mar 4 12:27:06 2006 Ben Pfaff <blp@gnu.org>
* Smake: Require "intprops" gnulib module.
/* -*- C -*- */
-/* Used by separable libraries to enable PSPP-specific features. */
-#define PSPP 1
-
/*
*
* Debugging
#if !HAVE_LIBPLOT
#define NO_CHARTS 1
#endif
-
-/* Define these if DEBUGGING is off and you want to make certain
- additional optimizations. */
-#if !DEBUGGING
-/* #define NDEBUG 1 */ /* disable assert() sanity checks */
-#endif
-\f
-/* Compilers. */
-
-/* Use proper keywords. */
-#if __GNUC__ > 1 && !defined (inline)
-#define inline __inline__
-#endif
-
-/* GNU C allows the programmer to declare that certain functions take
- printf-like arguments, never return, etc. Conditionalize these
- declarations on whether gcc is in use. */
-#if __GNUC__ > 1
-#define ATTRIBUTE(X) __attribute__ (X)
-
-/* Only necessary because of a wart in gnulib's xalloc.h. */
-#define __attribute__(X) __attribute__ (X)
-#else
-#define ATTRIBUTE(X)
-#endif
-
-#define UNUSED ATTRIBUTE ((unused))
-#define NO_RETURN ATTRIBUTE ((noreturn))
-#define PRINTF_FORMAT(FMT, FIRST) ATTRIBUTE ((format (printf, FMT, FIRST)))
-#define SCANF_FORMAT(FMT, FIRST) ATTRIBUTE ((format (scanf, FMT, FIRST)))
-
-/* This attribute was added late in the GCC 2.x cycle. */
-#if __GNUC__ > 2
-#define MALLOC_LIKE ATTRIBUTE ((malloc))
-#else
-#define MALLOC_LIKE
-#endif
\f
/* Filesystems. */
+Sat Mar 4 12:59:08 2006 Ben Pfaff <blp@gnu.org>
+
+ * In many source files, #include "compiler.h" to get GCC attribute
+ definitions.
+
Sat Mar 4 12:28:09 2006 Ben Pfaff <blp@gnu.org>
* In many source files, replace INT_DIGITS by
#include <unistd.h>
#include "alloc.h"
#include "case.h"
+#include "compiler.h"
#include "message.h"
#include "full-read.h"
#include "full-write.h"
#include <stdbool.h>
#include "message.h"
#include "calendar.h"
+#include "compiler.h"
#include "identifier.h"
#include "magic.h"
#include "misc.h"
#include "case.h"
#include "category.h"
#include "cat-routines.h"
+#include "compiler.h"
#include "message.h"
#include "hash.h"
#include "misc.h"
#include <stdlib.h>
#include <string.h>
#include "alloc.h"
+#include "compiler.h"
#include "filename.h"
#include "message.h"
#include "magic.h"
#include <ctype.h>
#include "message.h"
#include <stdlib.h>
+#include "compiler.h"
#include "misc.h"
#include "identifier.h"
#include "str.h"
#include "alloc.h"
#include <stdbool.h>
#include "case.h"
+#include "compiler.h"
#include "dictionary.h"
#include "file-handle-def.h"
#include "format.h"
/* PORTME: There might easily be alignment problems with some of these
structures. */
+#include "compiler.h"
+
/* This attribute might avoid some problems. On the other hand... */
#define P ATTRIBUTE ((packed))
#include <setjmp.h>
#include "alloc.h"
#include "case.h"
+#include "compiler.h"
#include "dictionary.h"
#include "message.h"
#include "file-handle-def.h"
#include "message.h"
#include <stdlib.h>
#include "alloc.h"
+#include "compiler.h"
#include "hash.h"
#include "str.h"
#include "message.h"
#include <stdlib.h>
#include "alloc.h"
+#include "compiler.h"
#include "dictionary.h"
#include "hash.h"
#include "identifier.h"
#include <ctype.h>
#include <errno.h>
#include "alloc.h"
+#include "compiler.h"
#include "dictionary.h"
#include "message.h"
#include "lexer.h"
#include "control-stack.h"
#include <assert.h>
#include <stdlib.h>
+#include "compiler.h"
#include "message.h"
#include "xalloc.h"
#include <stdlib.h>
#include "alloc.h"
#include "command.h"
+#include "compiler.h"
#include "message.h"
#include "expressions/public.h"
#include "lexer.h"
#include "alloc.h"
#include "case.h"
#include "command.h"
+#include "compiler.h"
#include "dictionary.h"
#include "control-stack.h"
#include "message.h"
#include "alloc.h"
#include "case.h"
#include "command.h"
+#include "compiler.h"
#include "data-in.h"
#include "debug-print.h"
#include "data-reader.h"
#include "alloc.h"
#include "case.h"
#include "command.h"
+#include "compiler.h"
#include "data-in.h"
#include "data-reader.h"
#include "dictionary.h"
#include "any-writer.h"
#include "case.h"
#include "command.h"
+#include "compiler.h"
#include "dictionary.h"
#include "message.h"
#include "file-handle.h"
#include "alloc.h"
#include "case.h"
#include "command.h"
+#include "compiler.h"
#include "data-list.h"
#include "data-reader.h"
#include "dictionary.h"
#include "alloc.h"
#include "case.h"
#include "command.h"
+#include "compiler.h"
#include "dictionary.h"
#include "intprops.h"
#include "lexer.h"
#include "alloc.h"
#include "case.h"
#include "command.h"
+#include "compiler.h"
#include "data-in.h"
#include "data-reader.h"
#include "dictionary.h"
#include "alloc.h"
#include "case.h"
#include "command.h"
+#include "compiler.h"
#include "data-writer.h"
#include "message.h"
#include "expressions/public.h"
#include "alloc.h"
#include "bit-vector.h"
#include "command.h"
+#include "compiler.h"
#include "dictionary.h"
#include "message.h"
#include "hash.h"
#include <math.h>
#include <stdbool.h>
#include "case.h"
+#include "compiler.h"
#include "data-in.h"
#include "dictionary.h"
#include "message.h"
#if HAVE_UNISTD_H
#include <unistd.h>
#endif
+#include "compiler.h"
#include "str.h"
#include "alloc.h"
#include "case.h"
#include "command.h"
+#include "compiler.h"
#include "dictionary.h"
#include "message.h"
#include "hash.h"
#include <config.h>
#include <stdlib.h>
#include "alloc.h"
+#include "compiler.h"
#include "dictionary.h"
#include "file-handle-def.h"
#include "command.h"
#include "hash.h"
#include "pool.h"
#include "command.h"
+#include "compiler.h"
#include "lexer.h"
#include "message.h"
#include "magic.h"
#include "case.h"
#include "casefile.h"
#include "command.h"
+#include "compiler.h"
#include "dictionary.h"
#include "lexer.h"
#include "message.h"
#include "case.h"
#include "dictionary.h"
#include "command.h"
+#include "compiler.h"
#include "lexer.h"
#include "message.h"
#include "magic.h"
#include "alloc.h"
#include "bit-vector.h"
#include "case.h"
+#include "compiler.h"
#include "dictionary.h"
#include "hash.h"
#include "pool.h"
#include "case.h"
#include "dictionary.h"
#include "command.h"
+#include "compiler.h"
#include "lexer.h"
#include "message.h"
#include "magic.h"
#include <config.h>
#include "command.h"
+#include "compiler.h"
#include "dictionary.h"
#include "sort.h"
#include "variable.h"
#include "category.h"
#include "cat-routines.h"
#include "command.h"
+#include "compiler.h"
#include "design-matrix.h"
#include "dictionary.h"
#include "message.h"
#include "case.h"
#include "casefile.h"
#include "command.h"
+#include "compiler.h"
#include "dictionary.h"
#include "message.h"
#include "group-proc.h"
#include <time.h>
#include "alloc.h"
#include "command.h"
+#include "compiler.h"
#include "dictionary.h"
#include "line-buffer.h"
#include "lexer.h"
#include "alloc.h"
#include "case.h"
#include "command.h"
+#include "compiler.h"
#include "dictionary.h"
#include "message.h"
#include "lexer.h"
#include "alloc.h"
#include "case.h"
#include "command.h"
+#include "compiler.h"
#include "data-in.h"
#include "dictionary.h"
#include "message.h"
#include <math.h>
#include "alloc.h"
#include "command.h"
+#include "compiler.h"
#include "message.h"
#include "lexer.h"
#include "random.h"
+Sat Mar 4 12:59:01 2006 Ben Pfaff <blp@gnu.org>
+
+ * compiler.h: New file.
+
Sat Mar 4 11:55:16 2006 Ben Pfaff <blp@gnu.org>
* str.h: Now assume that sprintf() returns the correct value.
--- /dev/null
+/* PSPP - computes sample statistics.
+ Copyright (C) 2006 Free Software Foundation, Inc.
+ Written by Ben Pfaff <blp@gnu.org>.
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public License as
+ published by the Free Software Foundation; either version 2 of the
+ License, or (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+ 02110-1301, USA. */
+
+#ifndef COMPILER_H
+#define COMPILER_H 1
+
+/* GNU C allows the programmer to declare that certain functions take
+ printf-like arguments, never return, etc. Conditionalize these
+ declarations on whether gcc is in use. */
+#if __GNUC__ > 1
+#define ATTRIBUTE(X) __attribute__ (X)
+
+/* Only necessary because of a wart in gnulib's xalloc.h. */
+#define __attribute__(X) __attribute__ (X)
+#else
+#define ATTRIBUTE(X)
+#endif
+
+#define UNUSED ATTRIBUTE ((unused))
+#define NO_RETURN ATTRIBUTE ((noreturn))
+#define PRINTF_FORMAT(FMT, FIRST) ATTRIBUTE ((format (printf, FMT, FIRST)))
+#define SCANF_FORMAT(FMT, FIRST) ATTRIBUTE ((format (scanf, FMT, FIRST)))
+
+/* This attribute was added late in the GCC 2.x cycle. */
+#if __GNUC__ > 2
+#define MALLOC_LIKE ATTRIBUTE ((malloc))
+#else
+#define MALLOC_LIKE
+#endif
+
+#endif /* compiler.h */
#include <assert.h>
#include <ctype.h>
#include <limits.h>
+#include <stdbool.h>
#include <stdlib.h>
#include "array.h"
#include "alloc.h"
-#include <stdbool.h>
+#include "compiler.h"
#include "misc.h"
#include "str.h"
#include <stdarg.h>
#include <stdbool.h>
+#include "compiler.h"
/* Message classes. */
enum
#define pool_h 1
#include <stdio.h>
+#include "compiler.h"
/* Maximum size of a suballocated block. Larger blocks are allocated
directly with malloc() to avoid memory wastage at the end of a
#include <stdio.h>
#include <string.h>
+#include "compiler.h"
#include "memcasecmp.h"
#include "memmem.h"
#include "snprintf.h"
#include <config.h>
#include <stdlib.h>
#include "alloc.h"
+#include "compiler.h"
#include "hash.h"
#include "group.h"
#include "group-proc.h"
02110-1301, USA. */
#include <config.h>
+#include "compiler.h"
#include "factor-stats.h"
#include "percentiles.h"
#include "misc.h"
#include "alloc.h"
#include "message.h"
#include "chart.h"
+#include "compiler.h"
#include "filename.h"
#include "misc.h"
#include "output.h"
#include <assert.h>
#include "plot-chart.h"
#include "cartesian.h"
+#include "compiler.h"
#include "plot-chart.h"
#include "cartesian.h"
#include <gsl/gsl_histogram.h>
+#include "compiler.h"
#ifndef NO_CHARTS
#include <limits.h>
#include <stdarg.h>
#include "alloc.h"
+#include "compiler.h"
#include "message.h"
#include "filename.h"
#include "getline.h"
#endif
#include "alloc.h"
+#include "compiler.h"
#include "message.h"
#include "filename.h"
#include "getline.h"
#include "alloc.h"
#include "bit-vector.h"
+#include "compiler.h"
#include "message.h"
#include "filename.h"
#include "font.h"
#include <stdlib.h>
#include "message.h"
#include "alloc.h"
+#include "compiler.h"
#include "format.h"
#include "magic.h"
#include "misc.h"
#include <stdio.h>
#include "command-line.h"
#include "command.h"
+#include "compiler.h"
#include "dictionary.h"
#include "message.h"
#include "file-handle-def.h"