hns - 日記自動生成システム - Version 2.19.9

先月 2006年07月 来月
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
Namazu for hns による簡易全文検索
詳しくは 詳細指定/ヘルプを参照して下さい
検索式:

2006年07月26日(水) 旧暦 [n年日記] [更新:"2006/07/27 21:33:16"]

#1 [機械] KERNEL_DATA_INPAGE_ERROR

家人の Let's Note CF-R2 が、これを言っている。 どうも disk の swap に使っているところが変とかいうことの気がしている。

一応簡単な方から: memtest86 (Download - Memtest86 v3.2 ISO image (gzip)) → memtest86-3.2.iso.gz を現在実行中


#2 [pkgsrc] sysutils/cdrecord-ossdvd が Segfault する

Starting program: /usr/pkg/bin/mkisofs -volid XXXX -part -hfs -r -J -l -o CDimage dir
(no debugging symbols found)
(no debugging symbols found)
/usr/pkg/bin/mkisofs: Warning: no Apple/Unix files will be decoded/mapped

Program received signal SIGSEGV, Segmentation fault.
0x419611e4 in memmove () from /usr/lib/libc.so.12
(gdb) bt
#0  0x419611e4 in memmove () from /usr/lib/libc.so.12
#1  0x0182dec0 in getopt_long ()
#2  0x01827858 in getopt_long ()
#3  0x0182804c in getopt_long ()
#4  0x01827a4c in getopt_long ()
#5  0x0180df34 in ?? ()
#6  0x0180d930 in ?? ()
#7  0x01803464 in ?? ()
#8  0x018016c4 in ?? ()
#9  0x418733f0 in _rtld_start () from /usr/libexec/ld.elf_so
Previous frame inner to this frame (corrupt stack?)
(gdb) 
これは 3.99.17 (つまり gcc-3.3.3) でも起きる。どうも引数によるらしい。

#3 [NetBSD] gdb6 を使うとすると

./build.sh の時には -Werror を付けているので、一つでも warning があると 止ってしまう。 で、gdb6 は三か所出るが、そのうちの二つは直せた。しかし、 これが分らない。
src/gnu/dist/gdb6/sim/ppc/device.h
   729  EXTERN_DEVICE\
   730  (void volatile) device_error
   731  (device *me,
   732   const char *fmt,
   733   ...) __attribute__ ((format (printf, 2, 3)));
/export/20060702/checkout/src/gnu/dist/gdb6/sim/ppc/device.h:733: warning: type qualifiers ignored on function return type

[KJ] [PATCH] Fix warning: type qualifiers ignored on function return

cat -n readline/rlstdc.h | sed -n '39,$p

    39  #ifndef __attribute__
    40  #  if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 8) || __STRICT_ANSI__
    41  #    define __attribute__(x)
    42  #  endif
    43  #endif
これって今は意味がないのか。古い gcc では __attribute__ 以下は無視するっていう意味か。

__attribute__ は関数属性:

format .. first-to-check
また、 first-to-check は、書式文字列に照らし合わせてチェックすべき最初の引き数の番号です。チェックすべき引き数を指定できない関数に対しては、第 3 パラメータに 0 を指定してください。この場合、コンパイラは、書式文字列だけを対象にして整合性のチェックを行います。
(M-x text-adjust-region 済)

gdb6 を使う変更:

これで出来た気が する。えー、実は (void) と (void volatile) の違いは分っていません。 UNIX入門 > C言語 > 17.2. volatile 何か勝手に外してしまっては良くない気もしますが sim なので、いいことにしませう。

多分、 「そのようなところ (関数の戻り値) に volatile なんか付けても無視するよ」 (type qualifiers ignored on function return type) って gcc が言っているのだから、外して正解という気がする




最近の日記
2024年03月10日
停電 (瞬電)
2024年03月03日
the second try on bare-metal
useradd
2024年02月29日
opendkim and senmail
2024年01月24日
chat/iam 0.0.8
2024年01月21日
uselocale vs setlocale (textproc/R-readxl)
以上、1 日分です。
タイトル一覧
カテゴリ分類
Powered by hns-2.19.9, HyperNikkiSystem Project

Count.cgi (since 2000/02/05)