diff options
| author | Paul Eggert | 2012-06-04 10:17:48 -0700 |
|---|---|---|
| committer | Paul Eggert | 2012-06-04 10:17:48 -0700 |
| commit | a043d3535a567070c005495cd2a6290208647f50 (patch) | |
| tree | 0421ca109ac0a83948e09c3d30eec9e1aae74218 | |
| parent | e364a2b7e15b4d8e4b36361138781d49720b6c95 (diff) | |
| download | emacs-a043d3535a567070c005495cd2a6290208647f50.tar.gz emacs-a043d3535a567070c005495cd2a6290208647f50.zip | |
* PROBLEMS (68000 C compiler problems): Remove obsolete section.
Not only are the compilers long-dead, the obsolete advice
typically doesn't apply to current Emacs sources.
| -rw-r--r-- | etc/ChangeLog | 6 | ||||
| -rw-r--r-- | etc/PROBLEMS | 44 |
2 files changed, 6 insertions, 44 deletions
diff --git a/etc/ChangeLog b/etc/ChangeLog index ad63879a9cb..5ef6f10a477 100644 --- a/etc/ChangeLog +++ b/etc/ChangeLog | |||
| @@ -1,3 +1,9 @@ | |||
| 1 | 2012-06-04 Paul Eggert <eggert@cs.ucla.edu> | ||
| 2 | |||
| 3 | * PROBLEMS (68000 C compiler problems): Remove obsolete section. | ||
| 4 | Not only are the compilers long-dead, the obsolete advice | ||
| 5 | typically doesn't apply to current Emacs sources. | ||
| 6 | |||
| 1 | 2012-06-03 Chong Yidong <cyd@gnu.org> | 7 | 2012-06-03 Chong Yidong <cyd@gnu.org> |
| 2 | 8 | ||
| 3 | * themes/wheatgrass-theme.el: | 9 | * themes/wheatgrass-theme.el: |
diff --git a/etc/PROBLEMS b/etc/PROBLEMS index 6d5ee0498c7..078352d78f4 100644 --- a/etc/PROBLEMS +++ b/etc/PROBLEMS | |||
| @@ -3205,50 +3205,6 @@ causes the problem to go away. | |||
| 3205 | The `contents' field of a Lisp vector is an array of Lisp_Objects, | 3205 | The `contents' field of a Lisp vector is an array of Lisp_Objects, |
| 3206 | so you may see the problem happening with indexed references to that. | 3206 | so you may see the problem happening with indexed references to that. |
| 3207 | 3207 | ||
| 3208 | ** 68000 C compiler problems | ||
| 3209 | |||
| 3210 | Various 68000 compilers have different problems. | ||
| 3211 | These are some that have been observed. | ||
| 3212 | |||
| 3213 | *** Using value of assignment expression on union type loses. | ||
| 3214 | This means that x = y = z; or foo (x = z); does not work | ||
| 3215 | if x is of type Lisp_Object. | ||
| 3216 | |||
| 3217 | *** "cannot reclaim" error. | ||
| 3218 | |||
| 3219 | This means that an expression is too complicated. You get the correct | ||
| 3220 | line number in the error message. The code must be rewritten with | ||
| 3221 | simpler expressions. | ||
| 3222 | |||
| 3223 | *** XCONS, XSTRING, etc macros produce incorrect code. | ||
| 3224 | |||
| 3225 | If temacs fails to run at all, this may be the cause. | ||
| 3226 | Compile this test program and look at the assembler code: | ||
| 3227 | |||
| 3228 | struct foo { char x; unsigned int y : 24; }; | ||
| 3229 | |||
| 3230 | lose (arg) | ||
| 3231 | struct foo arg; | ||
| 3232 | { | ||
| 3233 | test ((int *) arg.y); | ||
| 3234 | } | ||
| 3235 | |||
| 3236 | If the code is incorrect, your compiler has this problem. | ||
| 3237 | In the XCONS, etc., macros in lisp.h you must replace (a).u.val with | ||
| 3238 | ((a).u.val + coercedummy) where coercedummy is declared as int. | ||
| 3239 | |||
| 3240 | This problem will only happen if USE_LISP_UNION_TYPE is manually | ||
| 3241 | defined in lisp.h. | ||
| 3242 | |||
| 3243 | ** C compilers lose on returning unions. | ||
| 3244 | |||
| 3245 | I hear that some C compilers cannot handle returning a union type. | ||
| 3246 | Most of the functions in GNU Emacs return type Lisp_Object, which is | ||
| 3247 | defined as a union on some rare architectures. | ||
| 3248 | |||
| 3249 | This problem will only happen if USE_LISP_UNION_TYPE is manually | ||
| 3250 | defined in lisp.h. | ||
| 3251 | |||
| 3252 | 3208 | ||
| 3253 | This file is part of GNU Emacs. | 3209 | This file is part of GNU Emacs. |
| 3254 | 3210 | ||