祝・GCC 3.0リリース
0001さあねNGNG
 一昔前は、そこらの商用コンパイラよりも良い最適化をする
といわれたGCCも最近は色あせてきてたけど。。。
 待望の新バージョンリリースで巻き返しなるか?

 とりあえずインストールしてみよう
0002名無しさん@お腹いっぱい。NGNG
-O2以上の最適化のバグは直った?
0006名無しさん@お腹いっぱい。NGNG
まだglibcコンパイルできないし・・・
0007名無しさん@お腹いっぱい。NGNG
1を創造した宇宙人エロヒムです。
お騒がせしてもうしわけありません。
私どもは、1がどの程度の知能を備えているかを見ようと、
実験的にインターネットに接続させたのですが、いやはや、
その結果がこのお粗末なスレッドです。
私どもも宇宙に乗り出してもう10万年になるのですが、まだまだですね。
皆さんを生み出したような自然の進化にはかないません。
でも、今回の失敗の教訓を活かし、次はもう少しましな知性体を創造したい
と思っています。
そんなわけで、もう少しだけ実験をつづけたいので、まことに恐縮ですが
いましばらく御辛抱いただけないでしょうか?
データがそろいましたら1はすぐに処分いたしますので。
0008名無しさんNGNG
>>7のような文面が出てくるほどしょうもないスレでもないと思うがな
でもsage
0009名無しさん@お腹いっぱい。NGNG
中身で勝負っしょ。
で、早速使った人はいる?
0010名無しさん@お腹いっぱい。NGNG
ま、>>7みたいな馬鹿はほっとこうぜ
0012javaNGNG
gcj を使った人いますか?
バイトコードインタプリタがついたように gcc/NEWS には書いてあります.

#今gcc-3.0コンパイル中だけど,なかなか終わりません...
0013名無しさん@お腹いっぱい。NGNG
                Λ_Λ   / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
                ( ・∀・)< 勉強のジャマだから上げないでくれる?
             _φ___⊂)__ \_______________
           /旦/三/ /|
        | ̄ ̄ ̄ ̄ ̄|  |
        |広島みかん|/
0015名無しさんNGNG
50000ペソって日本円でいくらだ?(w
gcc3.0試してみたいけどミラーにまだ無かったので
ダウンロードしてないや…
0016名無しさん@お腹いっぱい。NGNG
>>15
俺は昨日落としたよ。
ttp://ring.crl.go.jp/pub/GNU/gcc
0017ほげ〜NGNG
Linux MandrakeではすでにRPMになっているらしい。
0018愚問NGNG
GCCのコンパイルってGCCでやるの?
0021愚答NGNG
>>18
./configure --prefix=/usr/girl/manko --enable-languages=c --enable-hard-sex
make bootstrap rhythm="piston level2"
make install location="G spot"
0022名無しさん@お腹いっぱい。NGNG
Solarisだったもんで標準でコンパイラが無かったとき
古いバージョンのpkg落としてインストールしてから
最新バージョンをソースからコンパイルしてたよ
その際、コンパイルが済んだら出来上がったgccでもっかい
自分自身をコンパイルし直すからえらい時間がかかったよ(w
0023#6411NGNG
>>18 ネタだとは思いつつマジレス
自身を正しく生成(bootstrap)できないコンパイラはイテーヨシ
漏れが若い頃、X68kでGCC作った漢たちの話をきいて
すげーと思った。もちろん、メーカの環境(糞XCだね)では
つくれなかったので、えらく苦労してた化膿。
002512NGNG
>>12です.みごと失敗しました.(solaris7+gcc2.95.3)
試行錯誤して,インストールはできたのですが,
gcjの実行に失敗しました.

・binutils-2.11 をインストール
・./configure --with-ld=/usr/local/bin/ld --with-as=/usr/local/bin/as

% gcj -v
Reading specs from /usr/local/lib/gcc-lib/sparc-sun-solaris2.7/3.0/specs
Reading specs from libgcj.spec
gcj: libgcj.spec: No such file or directory

% gcc-3.0/sparc-sun-solaris2.7/libjava/gij -v

couldn't set locale correctly
ld.so.1: gij: fatal: relocation error: R_SPARC_32:
file /tmp/gcc-3.0/sparc-sun-solaris2.7/libjava/./.libs/libgcj.so.2:
symbol __gcj_personality_v0: offset 0xff2de359 is non-aligned

ld.so.1: gij: fatal: relocation error: R_SPARC_32:
file /tmp/gcc-3.0/sparc-sun-solaris2.7/libjava/./.libs/libgcj.so.2:
symbol __gcj_personality_v0: offset 0xff2de899 is non-aligned

ld.so.1: gij: fatal: relocation error: R_SPARC_32:
file /tmp/gcc-3.0/sparc-sun-solaris2.7/libjava/./.libs/libgcj.so.2:
symbol __gcj_personality_v0: offset 0xff2de95a is non-aligned

Bus error (core dumped)
002612NGNG
補足です.

% gcj -specs=./libgcj.spec Hello.java

Hello.java:0: unknown encoding: `646'
This might mean that your locale's encoding is not supported
by your system's iconv(3) implementation. If you aren't trying
to use a particular encoding for your input file, try the
`--encoding=UTF-8' option.
compilation terminated.

% gcj --encoding=UTF-8 -specs=./libgcj.spec Hello.java
Segmentation fault (core dumped)

% gdb `which gcj` core

GNU gdb 4.18
Copyright 1998 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "sparc-sun-solaris2.7"...
Core was generated by `gcj --encoding=UTF-8 -specs=./libgcj.spec /tmp/Hello.java'.
Program terminated with signal 11, Segmentation Fault.
Reading symbols from /usr/lib/libc.so.1...done.
Reading symbols from /usr/lib/libdl.so.1...done.
Reading symbols from /usr/platform/SUNW,Ultra-1/lib/libc_psr.so.1...done.
#0 0xff2b6df4 in strncmp () from /usr/lib/libc.so.1
(gdb) bt
#0 0xff2b6df4 in strncmp () from /usr/lib/libc.so.1
Cannot access memory at address 0xff3ef9ec.
(gdb)
0028名無しさん@XEmacsNGNG
今更だが、Linux だと HelloWorld ぐらいはコンパイルできるようだ。

class HelloWorld {
public static void main(string args[]) {
System.out.println("Hello World");
}
}



gcj --main=HelloWorld HelloWorld.java // ネイティブバイナリ
gcj -C HelloWorld.java // バイトコード
gij HelloWorld // バイトコードの実行

って感じで動かしてみたけど全部うまくいってる。
しかし、--main も -C も --help では出てこないってのは。。
0030名無しさん@XEmacsNGNG
GCC 3.0 で java が compile できるとすると、
GDB でも java が debug できる様になったりするんでしょうか。
0031 NGNG
Fortran90はまだかな?
0032ななしNGNG
>>25
昔、Solaris に binutils は入れるな、って言われたことがあるんだけど、
それは関係ない?
0033 NGNG
gcc-3.0 って、Solaris の 64bit ネイティブコードを
正式サポートしてるの?
0035 NGNG
gccと言語仕様は同一だが、
C言語のダイレクトもしくは中間コードによる
インタープリタをリリースする計画はどうなった
んだろう?Javaが出てきたので辞めたのかな?
0036名無しさん@お腹いっぱい。NGNG
一応、AWTもサポートしてるみたい
使い方わからんけど

>>28 のコピってやってみたら string で、はまった

たかがこんなもんでも気がつかないもんだね
俺って馬鹿だな
0037名無しさん@お腹いっぱい。NGNG
age
0038名無しさん@お腹いっぱい。NGNG
gccってSolarisのdoorライブラリとか使えるの?
0042名無しさん@お腹いっぱい。NGNG
gccってなぜかincludeしてないライブラリ関数とかでも使えますよね。結構い
いかげんなのかな?よくわからないけど。ちなみにcygwin。
0043名無しさん@お腹いっぱい。NGNG
>>39
いや、使えるならうれしいだけだけど、doorsってSolaris固有のRPCでしょ?
linuxでも試験的にあるとは聞いていたけど。

じゃ、<doors.h>入りのプログラムでもProCかForteつかわないでも動作テスト位ならgccでできるんだしょうか?
x86版Solaris&GCCでも?
0044名無しさん@お腹いっぱい。NGNG
3.1 はまだか…。3.0.3 はまだ恐くてよ〜使えん。
004745NGNG
いやだからさ、C言語の(略)
mangleされねーっての。
0049なんだこいつNGNG
>>43
お前、

> じゃ、<doors.h>入りのプログラムでもProCかForteつかわないでも動作テスト位ならgccでできるんだしょうか?
> x86版Solaris&GCCでも?

阿呆の癖に、

> いや、使えるならうれしいだけだけど、doorsってSolaris固有のRPCでしょ?
> linuxでも試験的にあるとは聞いていたけど。

こういうつまらん話から外れる口答えするなよな。
誰も相手にしてくれなくなるぞ。
0050 NGNG
gcc-3.0.3 を入れてみようとコンパイルにチャレンジしてるんだけど,
warning の嵐なんだけど,これって無視していいの?
g++ でまともなテンプレートを使ってみたいってだけなんだけどさぁ・・・


0052名無しさん@お腹いっぱい。NGNG
>>49

????
で、使えるの?
0053ぴょんちゃんNGNG
GCC-3.X って、Propolice は組み込まれたのですか?
0054名無しさん@お腹いっぱい。NGNG
>53
組み込まれてないと思う。もっと会社ぐるみでプッシュしてほしいよね。
マージ熱望。
0055名無しさん@お腹いっぱい。NGNG
>>53
キノコ?
0058 NGNG
gcj って GUI のプログラムも作れたりするの? Swing とか・・・
さすがにウチのマシンじゃ gcc コンパイルするのは無理そうなので
断念したんだけど・・・
006054NGNG
>>53 残念ですぅ.セキュリティかなり改善できると思うのに.
006260, 53NGNG
>>61

スマソ。その通りです。

0063名無しさん@お腹いっぱい。NGNG
gccに独自プロセッサ向けのコードをはいて欲しい時どうしたらよいのでしょうか?

出力したコードのそれぞれの命令を、
独自プロセッサの命令で等価になるように置き換えるのが
普通のやり方でしょうか?

よろしくお願いします。
0064名無しさん@お腹いっぱい。NGNG
>63
独自プロセッサってgccがサポートしてない奴?
gccのソース見れば?
それでわからないならあきらめな。君には無理じゃ。
0065名無しさん@お腹いっぱい。NGNG
>>63
ftp://ftp.axis.se/pub/users/hp/pgccfd/pgccfd.pdf
ftp://ftp.axis.se/pub/users/hp/pgccfd/pgccfd-0.3.pdf
ftp://ftp.axis.se/pub/users/hp/pgccfd/pgccfd-0.4.pdf
ftp://ftp.axis.se/pub/users/hp/pgccfd/pgccfd-0.5.pdf

がんばれYO!おれは知らん。
0066名無しさん@お腹いっぱい。NGNG
>64
>gccのソース見れば?
なんでもかんでもソース見れば?は
なんか厨房くさい感じがしてやだなぁ。

それはさておき、
>出力したコードのそれぞれの命令を、
>独自プロセッサの命令で等価になるように置き換えるのが
>普通のやり方でしょうか?
これどういう意味?
0067名無しさん@お腹いっぱい。NGNG
マニュアルを読めばいろいろ書いてあるよ。
hoge.md というのが hoge ってマシン用のコードを吐くための
設定が書いてあるファイル。
0068名無しさん@お腹いっぱい。NGNG
.mdファイルを見ました。なんかリスプの
(define_attr ... )というのが延々と並んでて
なんのことか分かりません。

これって検索したけど日本語のものは殆どないですね。
英語のマニュアルをがんばって読まないとダメみたいです。
0071ナーナスNGNG
「それでわからないならあきらめな。君には無理じゃ」警報発令中〜!
0072名無しさん@お腹いっぱい。NGNG
googleで探してみたら、
実際にmdファイルをいじってみた方のレポートが見つかったので、載せときます。

http://web.yl.is.s.u-tokyo.ac.jp/~sumii/tsugcc/tsugcc.html
0073名無しさん@お腹いっぱい。NGNG
>>66
例えば、
gccで普通にコンパイルして、
i386向けのコードを出力する。

独自プロセッサにはinc命令がない

i386向けのコードでinc命令を使っているところを、
add命令等を使ってinc命令を使ったときと同じ結果になるように、
置き換える。

って感じの事をなんとなく想定してました。
0076名無しさん@お腹いっぱい。NGNG
>>73
GNU as をお勉強してみてはいかが?
0078名無しさん@お腹いっぱい。NGNG
sugoine sumii san
oremo gakusei no koro motto ganbareba yoka-taYO!
0079名無しさん@お腹いっぱい。NGNG
gcc-3.0.4 age
0080名無しさん@お腹いっぱい。NGNG
あげ
0081名無しさん@EmacsNGNG
久しぶりにageられてる。
Redhat7.2 では gcc3 ていうコマンドになってて gcc2.96 も残ってるんだけ
ど何か意味あるの? 安定してないからとか?

source からコンパイルするときとか gcc3 使った方が幸せになったりします
か?
0082名無しさん@お腹いっぱい。NGNG
>>81
板違いです。

Red Hat Linux 統合スレ
http://pc.2ch.net/test/read.cgi/linux/1010237038/

今日からRedHatLinux7.2
http://pc.2ch.net/test/read.cgi/linux/1011048483/

Red Hat Linux 7.1
http://pc.2ch.net/test/read.cgi/linux/988982645/

WIN-XPとRedhat7.2のデュアルインストール
http://pc.2ch.net/test/read.cgi/linux/1013131284/

★山崎邦正はlinux(Redhat)ユーザー!!
http://pc.2ch.net/test/read.cgi/linux/1004127931/

Redhat 7.2 Public beta(Roswell)ってどうよ
http://pc.2ch.net/test/read.cgi/linux/996800465/

黙ってRed Hat Linuxを使う奴はカコイイ。
http://pc.2ch.net/test/read.cgi/linux/996601004/

RedHat(世界標準) VS Turbo(日本国内厨房向け)
http://pc.2ch.net/test/read.cgi/linux/1001061990/

レッドハット
http://pc.2ch.net/test/read.cgi/linux/991016195/

0084 NGNG
で,ブッチャケ gcc-3.0.X は不安定なのか?
俺はフツーに使っているつもりだが.
# もっとも KDE とかデカいモノは使っていないからなんとも言えないのだが
0085名無しさん@お腹いっぱい。NGNG
そういえばglibcはコンパイルできるようになったの?
0086名無しさん@お腹いっぱい。NGNG
>81
俺も気になる。今rawhideを入れると、2.96と3.0.xのどっちが普通に(/usr/bin/gcc)使われるの?
0087名無しさん@お腹いっぱい。NGNG
>>86 お前ら少しわ調べろと小一時間(以下略)
以下 rawhideのi386.rpm持って来て中見ただけ

rawhide $ rpm -qpil compat-gcc-7.2-2.96.102.i386.rpm |grep /usr/bin
/usr/bin/gcc296
/usr/bin/i386-redhat-linux7-gcc

rawhide $ rpm -qpil gcc-3.1-0.21.i386.rpm |grep /usr/bin
/usr/bin/cc
/usr/bin/gcc
/usr/bin/gcov
/usr/bin/i386-redhat-linux-gcc
/usr/bin/protoize
/usr/bin/unprotoize

だから /usr/bin/gccは gcc 3.1になるはず
gcc-2.96はたぶん kernel作るのにつかってるんでは?
0088名無しさん@お腹いっぱい。NGNG
>87
さんきゅ。しかし…3.1って…。なんで3.1なんだ?
リリースされてないよね。
008987NGNG
gcc-3.1はcvsのversion
http://subversions.gnu.org/cgi-bin/viewcvs/gcc/gcc/gcc/
のversion.cでも見てみそ

#include "ansidecl.h"
#include "version.h"

const char *const version_string = "3.2 20020308 (experimental)";

だとさ

RedHatでは多分 specでs/experimental/Red Hat/
とか書き換えてるだろうけど
0090名無しさん@お腹いっぱい。NGNG
そうなんだ
そんな若いの使って大丈夫なんですかね。
0092名無しさん@お腹いっぱい。NGNG
glibcやGLibの日本語の(笑)リファレンスってないですかねー?
0093仕様書無しさんNGNG
age
0096名無しさん@お腹いっぱい。NGNG
こっぺりと同意>>95
gdb5.1の出来はどうなんでしょうかねい
0097名無しさん@お腹いっぱい。NGNG
うちじゃカーネルをgcc-3.1.0-21(RawHide)でRebuildしたら
ブートしなかった。pcmcia-csとかにまぜてもダメ。

だから2.96に戻した。

うちだけかも。
0098名無しさん@お腹いっぱい。NGNG
カーネルはだめっしょ。
0099名無しさん@お腹いっぱい。NGNG
ABIってどういう意味ですか?
0100名無しさん@お腹いっぱい。NGNG
100ゲト
0103名無しさん@お腹いっぱい。NGNG
で、最近のGCC3はどうよ?
まともになった?
0108名無しさん@お腹いっぱい。NGNG
3.1はまだでございますか?
0109名無しさん@お腹いっぱい。NGNG
>>103
3.0.4使っているけど、ちゃんと動いてるよ。

たまにtemplate関係で変かなー、と思うけど、
STLportとどっちが悪いのか見当つかないから(w、
自分のコードを変えてるよ…

奇怪なtemplateを書かない限り、至極まとも。

http://www.gnu.org/software/gcc/gcc-3.1/criteria.html
みると、3.1もかなりいけてそうだ。3.1にするかな?
使ってるのはi386-pc-linux-gnuだから、bug fixも順調だろうし。
0111名無しさん@お腹いっぱい。NGNG
MacOS X用のGCC、もうちょっといいのでてくれ。
0116 NGNG
IA-64のRedHat7.1の上で、gcc2.96も、gcc-3.0もソースからでは
全然コンパイルできないよ。変だね。
0118名無しさん@そうだ選挙にいこうNGNG
>>116
IA-64 (・∀・)スゴイ
0119名無しさん@お腹いっぱい。NGNG
>>116
その石ホスィ…
0122名無しさん@お腹いっぱい。NGNG
>>120
http://www.gnu.org/software/gcc/develop.html
とかを見ると、GCCの開発って一昔前に比べると、かなり計画的になっているね。
びっくりした。
それだけ、GCCの重要性が増したという事なんだろうけど。

0123名無しさん@お腹いっぱい。NGNG
FreeBSD5.0は3.1だそうですね。
0127名無しさん@お腹いっぱい。NGNG
>>125
もっとまとも?
もっと、強烈にオプティマイズして欲しいの?
0128名無しさん@お腹いっぱい。NGNG
125は124を指して「gccのsnapshotをFreeBSD-CURRENTに入れるのが気にくわないなら
積極的に人柱を集める他の方法を教えれ」と言っているのでした。

実際そうでもしないとLinux以外で顕在化するバグはみつかりにくいし、FreeBSDの
i386以外のarchはgcc3が必須なので、運命共同体というかなんというか。
0129名無しさん@お腹いっぱい。NGNG
>>124
無茶ではないと思う。CURRENTなんだし、さっさと使ってフィードバック
した方がリリースが充実していいんでは。obrienのおかげでローカル
パッチもだいぶ不要になったしね。(geraldもか)

ようやく、従来から 3.0.x を使っていたia64, sparc64, powerpcと
i386, alphaの足並みがそろっていい感じ。

GCC 3.1 は 2.95.x に比べて6割遅いというのは(゚д゚)マズーだが。。
0130名無しさん@お腹いっぱいNGNG
>>129
>GCC 3.1 は 2.95.x に比べて6割遅いというのは(゚д゚)マズーだが。。
遅いのは実行速度? コンパイル速度?
0136sageNGNG
3.1 kita
0137名無しさん@お腹いっぱい。NGNG
まじすか?
0138名無しさん@お腹いっぱい。NGNG
gcc-3.1 make bootstrap ちう。。。。
stage1 がなかなか終らない。。。。
0139名無しさん@お腹いっぱい。NGNG
まだミラーに行き渡ってないけど、もう本家にはあるね。
リリースアナウンスがある前に /.jp が記事にするかどうか(苦笑)
0141名無しさん@お腹いっぱい。NGNG
次のRedHatで乗れば普及しそう。
TurboやKondaraは次バージョンで乗せるかなー
0146名無しさん@お腹いっぱい。NGNG
やっと、make bootstrap 終ったよ。pentium III 700MHz で1時間20分かかった。 これから、Linux kernel のコンパイルやる。
0147 NGNG
サイズでかっ。。
0149名無しさん@お腹いっぱい。NGNG
gcc3.1のg++で#include<fstream>するとbasic_file.hの中でエラーに
なるの俺だけ? RedHat7.2(gcc2.96)でconfigure&makeしたんだけど…
0152名無しさん@お腹いっぱい。NGNG
>>151
Debianを家じゃ使ってるけどたしか/usr/binの下だったと思ったよ。
Debianはふつうじゃないのかな?他のは知らないから良く分からんけど。
0153名無しさん@お腹いっぱい。NGNG
>>150
$ cat /proc/version
Linux version 2.4.18 (root@pathos) (gcc version 3.0.4) #1 Thu Mar 14 17:36:09 JST 2002

Debian の sid です。
0158名無しさん@お腹いっぱい。NGNG
2.5.Xはwarningは山盛りでるわ、コンパイルエラーはでてくるわで
なかなか楽しめます: )。簡単な手直しは必須です。
gcc3.1と組み合わせたらそれはそれはハッピーになれるかも(w

やっぱりPC-UNIXはこうでないと!
0159名無しさん@お腹いっぱい。NGNG
Linuxは開発者多い割に対症療法なんだねえ。

*BSDは、日頃から山ほどwarning optionを付けて、見つかったwarningは
片っ端からつぶしてるもんな。styleにもうるさいし。

どっちをいじるのがハッピーかは、完全に性格によるかもしれない。
0160デフォルトの名無しさんNGNG
Linux2.5.15をgcc3.0.4でコンパイルして普通に使ってるよ。
新しい機能のthermal_interruptの辺りにバグがあるから
その機能を使わないようにすれば問題なく動く。
0161デフォルトの名無しさんNGNG
>>159
カーネル2.2の頃はwarningも殆ど無かったような気もするけど、
2.4になってからちらほらと。なんか生き急いでるような印象受けるよ<開発者
0164名無しさん@お腹いっぱい。NGNG
>>161
別にいいじゃん。2.5は開発系列なんだからさ。

乱暴と思えるようなmergeがなくなっちゃえば、
Linuxのmeritのひとつがなくなってしまう。
1.Xに比べれば天使を見るが如くだ。
0165名無しさん@お腹いっぱい。NGNG
specsファイルの書き方を説明したサイトないかなー
0167名無しさん@お腹いっぱい。NGNG
gcc-3.1では -march={pentium2,pentium3,pentium4} なんかが追加されてるけど,
celeronの場合は何を指定するのがベストなのかな? pentium2あたり?
0169名無しさん@EmacsNGNG
>>167
生成したバイナリに具体的にどんな影響が現われるのか興味深いな・・。
特にpentium2と3。

基本的にはpentium2を指定しておけば間違いないだろう。
あとSocket478用Celeronならpentium4。
それ以外はその時期のCeleronと同時に発表されたプロセッサと同じものを
指定すればよいだろう。
0172名無しさん@お腹いっぱい。NGNG
gcc の release plan がかなり変更になった.
gcc 3.1.1 が現地時間で 7/21 に出るけど,この系列は
gcc 3.2.x に名称変更.7/23 に gcc 3.2 が出る予定.
gcc 3.2.x の C++ binary は,gcc 3.1.x の C++ binary と
互換ではないので要注意.

新 branch は gcc 3.3.x になる.
http://gcc.gnu.org/develop.html#future
0175名無しさん@XEmacsNGNG
>>172
cvs [server aborted]: no such tag gcc_3_1_1_release

まだですね。
0178名無しさん@お腹いっぱい。NGNG
3.1.1 まだ〜?
3.2 がもうすぐ出ちゃうよ.

現在 3.1 を使っているけど,3.2 が出たらどうするか考慮中.
C++ binary incompatible ではねぇ.
0182名無しさん@お腹いっぱい。NGNG
>>181
gcc ではなく icc の間違いではないでしょうか。
icc も Pentium4/Xeon でないと真価を発揮しないようで.
0183名無しさん@お腹いっぱい。NGNG
>>182
どっちかっつーとPentium4/Xeonのほうがiccで最適化かけた
バイナリでないと真価を発揮しない、のような
0188名無しさん@お腹いっぱい。NGNG
>>187
VC出てきてないんですけど…
0192名無しさん@お腹いっぱい。NGNG
VCって、Windows CE用にmips、arm、shとかもサポートしてるみたいだけど、
この辺の最適化具合はどうなんだろね。
0200名無しさん@お腹いっぱい。NGNG
>>196

> benchimarkでしかあり得ないプログラムや

速い遅いを見るのがBenchmarkじゃないの?

> 数値計算やCG関係でMMXなんかがうまく使えた時に差がある程度と思うが?

数値計算やCGって実用域の性能には無関係だと?
VCはMMXの最適化なんてやんないよ。ProcessorPack入れたらInlineで
書けるって程度。VectorCは違うけど。

あのね、すぐWin厨って言わないでUNIXの外の広い世界も
勉強したほうがいいと思うけどな。
例えば同じマシンにKDEとWindows2000入れたらどっちが
さくさく動くと思う?

まぁ、そういうと、そらXがクソ、Qtがトロいせい。Win2000なんて
そもそも不安定だから比較対象にならんとか言い出すんだろうけどさ〜
0201名無しさん@お腹いっぱい。NGNG
>>200
比較対象にWindowsを持ってくるのはどうかと思うが、
いままでの*NIXの独善の歩みと言うべき姿勢は、
そろそろ見直される時期に来てるかも。

ソフトウェアの開発モデルとしては機能はしてるが
魅力やスピードが無いと言えるかも。
抽象的ですまんが
0202名無しさん@お腹いっぱい。NGNG
>>200
他にもUNIXとWindowsと比較・対決してるスレはたくさんあるから、
そういう議論はそっちでやってくれないかな?
ここはgcc関連の話題を扱うスレ。
0203名無しさん@お腹いっぱい。NGNG
> 例えば同じマシンにKDEとWindows2000入れたらどっちが
> さくさく動くと思う?

cygwinの上でKDE動かした方が遥かに遅かったが、なにか?
0204名無しさん@お腹いっぱい。NGNG
>>200
> 例えば同じマシンにKDEとWindows2000入れたらどっちが
> さくさく動くと思う?

gccでコンパイルしたKDEと
gccでコンパイルしたWindows2000の比較か?
0208名無しさん@お腹いっぱい。NGNG
ネタにマジレスすると、KDEとWin2000のどちらがサクサク動くか、という点については
コンパイラ云々よりもウィンドウシステムの設計に依存するところが大きいでしょう。
win2kはご存知のとおりカーネル内にグラフィックサブシステムが入ってるから、
かなりの速度がでる。Xは残念ながらオーバーヘッドがでかい。

つーことは、上記のように環境が速度の最大ファクタであるような場面では
コンパイラの最適化能力なんてあんまり目立たない→重要でない
ってなことになっちゃうと思うんだが...

で、未だにコンパイラの速度を競うような場面ってそんなにありますか?
計算屋さんにとっては重要な問題なのかなあ。
ほとんどライブラリに頼ってる気がせんでもないけど。
0210名無しさん@お腹いっぱい。NGNG
gcc-3.1.1 リリースage
0211名無しさん@お腹いっぱい。NGNG
http://www.usenix.org/publications/library/proceedings/usenix-nt98/full_papers/zabatta/zabatta_html/zabatta.html

"Solaris 2.6 vs Windows NT 4.0"のスレッドパフォーマンス比較だけど,

The "same compiler", GNU gcc version 2.8.1, was used to compile the
test programs for both operating systems. ... However, later we
compiled the test programs with each system's native compiler (Visual
C++ 5.0 and SUN C Compiler 4.2) and found no significant differences
in performance.

となっているね.この場合,OS側のライブラリやカーネルを実行してる部分が多くて
ユーザプログラム側の部分によって大きな差がつかない,ということだろうね.
0212名無しさん@お腹いっぱい。NGNG
板違いかもしんないけどさ。気に入らなかったら読み流してちょ。

コンパイラの教科書って、未だに Ahoのアレが一番メジャーなの?
あそこまで行かないにしても、それなりに網羅的に書いてある
もーちょっとモダーンな教科書あったら紹介きぼんぬ。
0214名無しさん@お腹いっぱい。NGNG
>>212
つーか、最近は一冊にまとまっていない。分量多すぎ。
プログラミング言語一般論, parsing, type, code emiting&optimization
くらいに分かれている。翻訳があるドラゴンブック読んでから、次に進めばよい。
0215214NGNG
>>212
もしかして英語でも良かったの?
0216名無しさん@お腹いっぱい。NGNG
>212
中田育男著「コンパイラの構成と最適化」
0218名無しさん@お腹いっぱい。NGNG
>>215
英語でもいーっす。
今、amazon.comも見てみましたが、あまりくるのがありませんでした。
Modern Compiler Design が一番ポピュラーなんですかね。

>>216
読んだ事ありますがドラゴンの方がよさげ(網羅的)な気が。

>>217
Appel「Modern Compiler Implementation in Java 」ですか?
0219 NGNG
Compiling with continuation とか。
0223名無しさん@お腹いっぱい。NGNG
GCC 3.2 Released. アナウンスされた。
0224名無しさん@お腹いっぱい。NGNG
GCCへの、というわけでもないですがコンパイラに関する
スレッドがみつけられなかったので質問させてください.
何とか社fooのCompiler (foocc)ver.10はsourceを書いた後
(2回目は自分自身でcompileするにしても)最初はfoocc-9で
compileするんでしょう.ver.9はver.8でcompile、と
考えていくとver.1はどうやってつくったんでしょうか?他の会社なりのhogeのcompiler(例えばhogecc-5とか)がその時あれば
ちょっと借りてきて1回目だけそれを使えばいいんですが、それでは
hogecc-1のsourceはどうやってcompileしたんでしょう?
最初は誰かえらい人がアセンブラで書いてくれた.位しか
思いつかないのですが...
こんなの常識なんでしょうか?
0225春日三球NGNG
今夜も寝られなくなっちゃったじゃねえかゴルァ!
0227名無しさん@お腹いっぱい。NGNG
トグルスイッチといえば、
コンパイラではなくOSだがCray社を作ったシーモアクレイは
OSをトグルスイッチでパチパチパッチンと入れて
それがいきなり動いたっていう.本当か?
http://cruel.org/freeware/hdomcorrect.html
GCCと関係ないけど.
0228名無しさん@お腹いっぱい。NGNG
何でみんな新しいもの追っかけるの?
昔は新しいモノを追っかけてたんだけど、安定してるはずのgcc2.95.2で
glibcをmakeしたら腐ったコード吐いたことがあったので、新しいのは怖くて使えないよ。

結局、egcs2.91.66が一番安心できる。
0230名無しさん@お腹いっぱい。NGNG
>>228
新しいもののほうがナイスな最適化するかもーとか、
C++ の標準準拠っぷりとか、
gcc のパッチを作ってるので仕方なくーとか。

必要ないんなら古いのでいいと思いますよ、ええ。
FreeBSD と NetBSD は gcc-3.x に移行する予定みたいですね。
0231名無しさん@お腹いっぱい。NGNG
バグると不平を言うよりも、進んでバグを出しましょう

…というのがフリーUNIXコミュニティの美徳ではないかと>>228

仕事で使うならstableなものを選択するというのもアリ
0233名無しさん@お腹いっぱい。NGNG
おれbug見つけたら小躍りしながらレポート書いちゃうけどな(・∀・)
0237名無しさん@お腹いっぱい。NGNG
>>235
例えばどんなソースだとエラーがでる?
0240名無しさん@お腹いっぱい。NGNG
10年前の gcc-1.42 がファイル数 281、展開後のサイズ7.7Mだったのが、
gcc-3.2 ではファイル数 14375、サイズ161MB に肥大しているから、
せっかくの10年前にgccのソースを読む機会を逸した奴はもう一生読めないに違いない。
0245名無しさん@お腹いっぱい。NGNG
ここにはgccを理解してる人がいるみたいなので質問させてください。
1. rtl.defやrtl.h,rtl.c
2. *.md
3. -drオプションを指定されたときに吐き出されるファイル
これら三つの関係がいまいちよくわかりません。
簡単でいいのでこれらの関係を教えて下さい。
0249名無しさん@お腹いっぱい。NGNG
>>247
えー その info に十分な情報があると思うけどなあ。

1. RTL を操作するためのユーティリティ関数と、RTL の共通定義
3. コンパイル対象のソースが RTL に変換された直後の RTL の様子
2. insn-flags.h とか insn-codes.h とか insn-output.c とか
insn-attrtab.c とか、とにかくマシン依存のコンパイラソースを
生成するためのソース
0250名無しさん@お腹いっぱい。NGNG
>>249
おお、ありがとうございます。
なんとなくイメージが掴めました。
教えてもらったことを手がかりに
ドキュメントを読み直します。
0251名無しさん@お腹いっぱい。NGNG
俺は組込み系やってるのでコンパイラが吐き出したコードを読む機会が多いんだけど、
最適化されるはずなのにうまくされてないような所ってのも、正しく動くけどbugのうちとみなしてレポートしてる
たいていは数日以内にpatch送ってもらえたりするんで、いつでもmakeできるように
gccのソースツリーは展開したまま置いてある。
間違ったコード吐いたりされる場合はさすがにpatch送ってもらうのを待ってるわけにいかんので
レポートするのと同時に自分で治すこともあるけど、簡単に治せるようなものなら良いが
ちょっとややこしくなるともう手に負えん(;´Д`)
0252名無しさん@お腹いっぱい。NGNG
今gcc-3.2コンパイルしてます。
dejagnuのチェックでFAILが出まくってるんだけど、コンパイル失敗ですか?
一応継続してるんですが。
0253名無しさん@お腹いっぱい。NGNG
gcc が Java のバイトコードも吐けるようになるのはいつの日か。
0256名無しさん@お腹いっぱい。NGNG
質問です。
某マシンでgcc使ってるんですけどnewが例外投げてくれません。
PCのgccでも昔は駄目だったんですけど、
3.0では直ってるんでしょうか?
0259名無しさん@お腹いっぱい。NGNG
>>218
亀レスだが、英語でいいなら、Modern Compiler Designでいいんじゃない?
ドラゴンブックもぺ─バーバックの奴買っておけばいいし。
Advanced Compiler Design and Implementationも面白いよ。

Appelのは傾向がチョト違う。
>>219も"Garbage Collection: Algorithms for Automatic Dynamic Memory Management"も(w
0260名無しさん@お腹いっぱい。NGNG
>>224
最初は別の言語で書く。アセンブラまで後退する必要はない。
ちなみに昔はFortranやPL/1で書かれたC compilerがあった。

テメーのcompiler書いても、
gccがあるからgccで簡単にbootstrap、って状況の方が(昔からすれば)異常。
0261名無しさん@お腹いっぱい。NGNG
>>256
少なくともgcc 2.95では、mallocが本当に失敗すればbad_alloc
投げてくれるはず。(cp/new1.cc)
楽観的メモリ割り当てとかで、malloc自体が成功しているからでは?
0262名無しさん@XEmacsNGNG
intel 系っつーか PentiumPro 系のハナシですが、
gcc2.95 って妙に速いコード出すことがあるですね。
gcc3.2 や icc より速い。。。
0263224NGNG
> 260さん
ありがとうございます.それはそうなのでしょうけど,
(最初にCを作った人は"Cで書いてコンパイルしたC Compiler"
がそれこそ世界になかったわけですから!)
その "FortranやPL/Iで書いたC Compiler"を作るための
"FortranやPL/IのCompiler"をやはり作らなければいけませんよね...
でも教えてばっかりでもなんだか悪いのでいろいろ調べてみます。
どう考えても最初は簡単な(機能が少ない)言語Aをアセンブリ言語で書き、
その言語Aを使ってもうちょっと高水準の(機能が多い)言語Bのコンパイラ
を書く.-> 以下同文 とやっていったのだとは思いますが.
0265名無しさん@お腹いっぱい。NGNG
>>263
理論的には可能であるとしても、
アセンブラで書いたC compilerは山田かつて見たことがない。

> hogecc-1のsourceはどうやってcompileしたんでしょう?
> 最初は誰かえらい人がアセンブラで書いてくれた.位しか

よって>>260ではこの行間の話をした。以上。
0266いや、知らんけどNGNG
リッチーさんが最初にPDP-7上で書いたCコンパイラは、アセンブラだったのでは。
0271名無しさん@EmacsNGNG
Unixの歴史とかの書籍を見ると
「コンパイラコンパイラ」
ってのがあったらしいが...
....一番最初はどうだったんだろう。
謎、謎。
0273名無しさん@EmacsNGNG
libungif コンパイルできねー
0277名無しさん@お腹いっぱい。NGNG
g++ 3.2 で ostream_iterator が未定義だといわれるんだが。

% cat foo.cpp
#include <ostream>
#include <string>
int main()
{
std::ostream_iterator<std::string> *i;
}

% g++ -dumpversion
3.2

% g++ -c foo.cpp
foo.cpp: In function `int main()':
foo.cpp:5: `ostream_iterator' undeclared in namespace `std'
foo.cpp:5: parse error before `>' token
0279277NGNG
サンクス。
標準では <iterator> なのか。やっぱり古い知識のままじゃいかんなぁ。
0280名無しさん@お腹いっぱい。NGNG
gcc をビルドしてできる libstdc++.so.5 とかは、どこにインストール
すべきものなんでしょうか。
configure --prefix=/usr/local/gcc-3.2 とかでビルドして make install
すると、/usr/local/gcc-3.2/lib/ の下にインストールされるのですが、
g++ 3.2 で作成した実行ファイルを起動すると、libstdc++.so.5 が
見つからない、と言われてしまいます。
0283名無しさん@お腹いっぱい。NGNG
>280
リンク時に
g++ -Wl,-rpath -Wl,/usr/local/gcc-3.2/lib
と書いておけば? specs ファイルでも指定できるかもしれんが。
0284280NGNG
アドバイス、ありがとうございます。
>>281
Linux 2.2 です。
ldconfig とか LOAD_LIBRARY_PATH とかは、とく使ってませんでした。
man を見ると、ldconfig で解決できそうな感じがします。

>>283
これは、スタティックリンクをするときの話でしょうか。できれば、
実行時にリンクを解決したいのです。
0286280NGNG
libstdc++ の件は
# echo /usr/local/gcc-3.2/lib >> /etc/ld.so.conf
# ldconfig
で解決しました。

g++ 3.2 で別の問題なんですが、std::wstring を使おうとして、

#include <string>
int main() { std::wstring s; return 0; }

をコンパイルしたら、

/tmp/ccSgXbtC.o: In function `main':
/tmp/ccSgXbtC.o(.text+0x17): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::basic_string[in-charge]()'
/tmp/ccSgXbtC.o(.text+0x22): undefined reference to `std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::~basic_string [in-charge]()'

のようなリンクエラーが出ました。もともと普通にビルド&インストール
しただけでは wstring が使えないので、c++config.h で
#define _GLIBCPP_USE_WCHAR_T 1
として (無理やり?) 使っていたのですが、3.0.4 あたりではうまくいって
いたのに、3.2 では上のようなエラーが出るのです。
これは、3.2 の basic_string では、メンバ関数がインライン展開されずに
別モジュールとしてコンパイルされているんですかね。
0287280NGNG
なんと、basic_string クラスのインスタンス自体が外部宣言されていました。
gcc-3.2/include/c++/3.2/bits/basic_string.tcc:
extern template class basic_string<wchar_t>;
gcc じゃ、こんな書き方ができるのか。
で、ビルド時には _GLIBCPP_USE_WCHAR_T が undef になっていたので、
ライブラリには、wstring の実体が作られていないのでしょう。自前で
template class std::wstring;
とやってやれば、うまいことリンクできました。
ところで、ビルド時から _GLIBCPP_USE_WCHAR_T を有効にするには
どうすればいいんでしょう。
0288280NGNG
結局、システムに入っていた glibc が古くて wchar_t 関係の
関数がそろっていなかったのが原因のようですね。現在、
glibc-2.2.5 をビルド中。
0289名無しさん@お腹いっぱい。NGNG
g++3で書いた中身C++、インターフェースCなライブラリを、g++2
から利用する(またはその逆)ための、良い方法は無いでしょうか?
普通にやろうとすると__dynamic_castなどが衝突するので、
リンカ側で色々工夫をする必要があるようなのです。
FreeBSDで、-symbolicなどを駆使して、一応例外などを
動かすことはできましたが、とてもポータブルとは思えない
ので、もっと正しい方法があれば教えてください。
0290名無しさん@お腹いっぱい。NGNG
64bit Solaris 8でgcc 3.2をコンパイルできた人いますか?
Companion CDで入る/opt/sfw/bin/gcc (2.95.3)を使って
やっているのですが(make checkの)エラーが消えません。

$ /usr/local/bin/tar xvfz gcc-3.2.tar.gz
$ cd gcc-3.2; mkdir objdir; cd objdir
$ echo $PATH
/opt/sfw/bin /usr/bin /bin /usr/ccs/bin /usr/local/bin
$ ../configure --enable-languages=c,c++ --with-as=/usr/ccs/bin/as
--with-ld=/usr/ccs/bin/ld --disable-nls
$ /usr/local/bin/make bootstrap (Errorは出ません。)
$ echo $TCL_LIBRARY
/usr/local/lib/tcl8.4
$ echo $DEJAGNULIBS
/usr/local/share/dejagnu
$ /usr/local/bin/make -k check | tee check.log
で,check.logからサマリ部分だけ抜き出すと、

0291名無しさん@お腹いっぱい。NGNG
=== libstdc++-v3 Summary ===

# of expected passes 407
# of unexpected failures 2
# of unexpected successes 10
# of expected failures 16

=== gcc Summary ===

# of expected passes 18688
# of expected failures 66
# of unsupported tests 111

=== g++ Summary ===

# of expected passes 7248
# of unexpected failures 3
# of expected failures 88
# of untested testcases 21
# of unsupported tests 4

bootstrapまでは通っているけどtestsuiteのC++関連の
unexpected failuresがあるのが不安です。
http://gcc.gnu.org/gcc-3.2/buildstat.htmlを見ると
(Test resultsでエラーがある人もいるけど)Successfulの
人もそれ以上に結構いて、なんで私のだけエラーが出るのかと...
0292名無しさん@お腹いっぱい。NGNG
$ cd gcc/
$ for file in *.o ; do cmp $file stage2/$file; done
でのstage2とstage3の比較はOKのようなのですが...
そもそもtestsuiteでunexpexted failuresが0になるものでしょうか。
gccをsourceからbuildするのは初めてなのでよく作法/流儀が...
Package版があるようなのでそっちを入れた方がいいんでしょうか。
0296名無しさん@お腹いっぱい。NGNG
>>295
もしよければ詳細キボンヌ



gcc-3.2は最適化でバグがあるらしいね…「-fno-strength-reduce」を追加して対処
した方がいいらしい(Vim-6.1のパッチ260より)

gcc-3.2.1ではfixされているのかな?
0297295NGNG
これと同じ ttp://archive.develooper.com/perl5-porters@perl.org/msg84835.html
パッチあったんで助かったYo!
0299名無しさん@お腹いっぱい。NGNG
ttp://www.coyotegulch.com/reviews/intel_comp/intel_gcc_bench2.html
0305名無しさん@お腹いっぱい。NGNG
特許を申請した理由が知りたい…
日付からするとパッチを公開した時期なのかな?
0307名無しさん@お腹いっぱい。NGNG
特許は申請じゃなくて出願するもんだろう。
0309名無しさん@お腹いっぱい。NGNG
みなさん、リリース間近の3.3は試していますか?
0310名無しさん@お腹いっぱい。NGNG
propolice開発者です。GCCに提出している部分はGPLとしていますから、この部分に関して特許の心配はありません。
但し他のコンパイラ製品には適用されます。
このスレッドは見ているわけではないので、できれば私宛にメールを送ってください。アドレスはホームページから探してください。
0311名無しさん@お腹いっぱい。NGNG
>>310
キタ━━━━━━(゚∀゚)━━━━━━ !!!!!
0312名無しさん@お腹いっぱい。NGNG
>Support for thread local storage has been added to the IA-32 and x86-64 ports.

ほう。port限定だけど3.3でTLSサポート入るのか。

>IBM ROMP, romp-*-*
>IBM大騒ぎ、romp-*-*

(´∀`)
0313nobodyNGNG
TLS サポートって TLS をどうサポートするんだろう?
下校できるとか
0315名無しさん@お腹いっぱい。NGNG
3.2.1いい感じだね。
安定してきた感じ。
0316名無しさん@お腹いっぱい。NGNG
そろそろ、全面的に3を採用してもいい頃なんじゃないかねえ。
Cに関しては移行についての問題も少なそうだし。g++がなあ
2.XXはおかしいから早いところなくなって欲しいのだけど。
0317名無しさん@お腹いっぱい。NGNG
祝 Debian sid で gcc = gcc-3.2 化
0319名無しさん@お腹いっぱい。NGNG
>>318
まあ、Linux-2.5.54 は Documentation/Changes では
The recommended compiler for the kernel is gcc 2.95.x (x >= 3), and it
should be used when you need absolute stability. You may use gcc 3.0.x
instead if you wish, although it may cause problems. Later versions of gcc
have not received much testing for Linux kernel compilation, and there are
almost certainly bugs (mainly, but not exclusively, in the kernel) that
will need to be fixed in order to use these compilers. In any case, using
pgcc instead of plain gcc is just asking for trouble.
なんて書かれてはいるけどね。
0320名無しさん@お腹いっぱい。NGNG
vim 6.1のconfigureにもこんなのがあるなぁ。

if test "$gccversion" = "3.1" -o "$gccversion" = "3.2" -o "$gccversion" = "3.2.1" && `echo "$CFLAGS" | grep -v fno-strength-reduce >/dev/null`; then
echo 'GCC 3.1 and 3.2 have a bug in the optimizer, adding "-fno-strength-reduce"'
CFLAGS="$CFLAGS -fno-strength-reduce"
fi
0322296NGNG
>>320
ま、3.2.1でも3.2と同様問題がある…ということですか ショボーン
0325名無しさん@お腹いっぱい。NGNG
3.3ってどうよ
0330名無しさん@お腹いっぱい。NGNG
http://gcc.gnu.org/install/finalinstall.html

> We strongly recommend to install into a target directory where there is no
> previous version of GCC present.

これって、gcc をバージョンアップするときは以前のバージョンを消せということ?
0331名無しさん@お腹いっぱい。NGNG
上書きしてトラブっても自力で対処できないような香具師は
おとなしく新しいディレクトリ掘っとけ、ということでしょう。
/usr/local/gcc-3.2.2/ とか。
0335名無しさん@お腹いっぱい。NGNG
>>334
ここで出ている target directory をたがえるいうのは、
そういうことではないと思うが。

おまい、自分でgccをインストールしたことすらないでしょ。
0343名無しさん@お腹いっぱい。NGNG
age
0347名無しさん@お腹いっぱい。NGNG
ちゃんと3.2.2がCurrentReleaseになったのは4/25
だし。遅いってことも無いんじゃない?

上で3.2.2キタ━(゚∀゚)━!って言ってたのはDebianに
PreReleaseが入ったってだけだし。
0350名無しさん@お腹いっぱい。NGNG
Pentium Mで最適化って-mcpu=pentium3でエエのかしら?
i686にしといたほうが無難か?
0351 NGNG
-O3 が無難
0352名無しさん@お腹いっぱい。NGNG
-mcpu=pentium3と-mcpu=i686ってどこがちがうの?
0354名無しさん@お腹いっぱい。NGNG
>>352
gccのソース嫁

とりあえずi386.mdってのを探すべし
0360名無しさん@お腹いっぱい。NGNG
gcc 3.3 でCのコードをコンパイルしようとした時,

/tmp/ccSthUIX.s: Assembler messages:
/tmp/ccSthUIX.s:1820: Error: invalid character '.' in mnemonic

というようなエラーが出てきて,該当するアセンブリ出力を見てみたら

    cmovl.ge    %eax, %ebx

というものだったんだけど,これは gcc 側がおかしなニーモニックを
吐き出しているのか,それとも as 側がおかしいのか,どちらでしょうか?
as は binutils 2.13.2.1
0363名無しさん@お腹いっぱい。NGNG
gcc2.9x系と3.0との違いは何ですか?
ポインタだけでも結構ですので、ご存知の方がいれば
おしえてください。
0365名無しさん@お腹いっぱい。NGNG
>>364
さんくす。
主な変更点は、
・最適化の強化(末尾再帰呼び出しの除去など)
・サポートするプラットフォームの増加(IA64など)
・Javaのサポート
・C++まわりの改良
・C言語の新しい規格C99への対応を強化(完全準拠ではないみたい)
・新しく書き直されたプリプロセッサ
・内部仕様の変更(ガーベージコレクションを採用、文脈自由文法の
解析アルゴリズムを変更など)

こんなかんじでしょうか。

ところで
「New tail call and sibling call elimination optimizations.」
は末尾再帰呼び出しの除去だと思ったんだけど、あってる?
0366名無しさん@お腹いっぱい。NGNG
再帰だけじゃなくて、
return foo();
みたいのを関数呼び出しからジャンプに変更するとかも含まれんじゃないかな。
0368名無しさん@お腹いっぱい。NGNG
そもそも見慣れない構文なんだが。C99か?
いずれにしても、そんな機能を使ってるプログラムは
まず無いだろうな。
0369名無しさん@お腹いっぱい。NGNG
Debian/sarge使ってます。
g++を3.3.1-0pre0にしたらblitz++がコンパイルできなくなっちゃって、
3.3-2に戻したらコンパイルできるようになりました。
gccが悪いのかblitz++が悪いのかはわかりません。
こういうときはどこかに報告するべき?
0370名無しさん@お腹いっぱい。NGNG
>>369
原因を特定できないのなら、ろくな説明ができないと
思われますので報告は必要ないですね。
特定できるのなら詳細なバグレポートを。
0371名無しさん@お腹いっぱい。NGNG
/* BEGIN-----------
#include<iostream>
#include<fstream>
using namespace std;
int main(){ return 0; }
/* END-------------
というプログラムをFreeBSD5.1のGCC3.2.2でコンパイルしたら
#include<fstream>の部分が原因で、
/usr/include/g++/fstream:304: warning: `typename std::basic_filebuf<_CharT,
_Traits>::int_type' is implicitly a typename
/usr/include/g++/fstream:304: warning: implicit typename is deprecated, please
see the documentation for details
/usr/include/g++/fstream:309: warning: `typename std::basic_filebuf<_CharT,
_Traits>::int_type' is implicitly a typename
/usr/include/g++/fstream:309: warning: implicit typename is deprecated, please
see the documentation for details
というエラーがでます。
GCC2.9.5では何もエラーは起らないのですが、原因知ってる人がいたらおねがいします。
0375名無しさん@お腹いっぱい。NGNG
>>371
なんか-CURRENTでそんな話読んだ記憶がある。
ヘッダファイルが古いからだったか。

どうせg++3.3に上げるから放置じゃなかったかな。

portsからいれれば問題ない。

>>372
正しいプログラムにwarningが出るのは問題だろ。
C++ってしってる?
0376名無しさん@お腹いっぱい。NGNG
"正しい"プログラムだからこそwarningになるのであって、
"正しくない"プログラムが(errorではなく)warningにしかならないのであれば、
そっちのほうが大問題。

まあ、C++規格のうつろいの激しさを知らないピュアな>>375に乾杯。
0377371NGNG
>"正しい"プログラムだからこそwarningになるのであって、
>
結局このwarningは消せないのでしょうか?
毎回出て来るのは正直ウザいので
0382名無しさん@お腹いっぱい。NGNG
>>376
> "正しい"プログラムだからこそwarningになるのであって、
はぁ?ISO/IEC 14882って読んだことありますか?

> まあ、C++規格のうつろいの激しさを知らないピュアな>>375に乾杯。
自分のことだろw
いまだに頭の中がARMなんだろうな…
0385名無しさん@お腹いっぱい。NGNG
わはは、ピュアな脊髄反射だなあw
んで、マジレスするとISO/IEC 14882には
そもそもここで言うerrorとかwarningという用語は登場しないし、
"正しい"プログラムにdiagnostic messageを出してはいけないとも書いてないわけだが。
0389375 NGNG
>>387
本当は375==382==384==388だよ。
0391名無しさん@お腹いっぱい。NGNG
まあ、とりあえず、
> `typename std::basic_filebuf<_CharT, _Traits>::int_type' is implicitly a typename
> implicit typename is deprecated
ちゅうことで。
0393名無しさん@お腹いっぱい。NGNG
gcc3.3でmips用が作れない…。
どうしたものか
0396393NGNG
>>395
はい、まず手順から

gcc-3.3.tar.gz,newlib-1.11.0.tar.gz,binutils-2.13.2.1.tar.gzを
ftp.ring.gr.jpからもってくる
~/source/toolchain/以下に展開する。

# binutilsのインストール
cd binutils-2.13.2.1
./configure --prefix=/usr/local/cross --target=mips-embedded-elf
make
su -m
make install

ここで~/.cshrcに手を入れて/usr/local/crossにPATHを通す。
source ~/.cshrc
0397393NGNG
# gccのインストール
cd ,../gcc-3.3
ln -s ../newlib-1.11.0/newlib .
./configure --prefix=/usr/local/cross --target=mips-embedded-elf \
--with-newlib --enable-languages="c,c++"
make (ここでエラー)

xgcc: installation problem, cannot exec `mips-tfile': No such file or directory
*** Error code 1

Stop.
make: stopped in /home/tak/source/toolchain/gcc-3.3/gcc
*** Error code 1

Stop.
make: stopped in /home/tak/source/toolchain/gcc-3.3/gcc
*** Error code 1

Stop.
make: stopped in /home/tak/source/toolchain/gcc-3.3

googleでmips-tflileを検索すると--with-gnu-asをつけた方がよい
との例があったので、それを追加して再チャレンジ
http://www.spacelan.ne.jp/~m-yana/micro/gnu/mips/mipsegcs.htm
(gcc-3.3/ ディレクトリは一度消してやりなおし)
0398393NGNG
make (またエラー)
tiswctype.c ..linked
twctrans.c ..linked
twctype.c ..linked
wctype.exp ..linked
creating cache ../config.cache
configure: error: can not find install-sh or install.sh in .. ./..
*** Error code 1

Stop.
make: stopped in /home/tak/source/toolchain/gcc-3.3

ここで力尽きました。(gcc-3.3/ にはinstall-shがあるのに・・・)
0399393NGNG
本当は--enable-sharedと--enable-threadsもつけたいのですが
まず基本をするためにこのように(>>396-398)しました。

ただわからないのは、BSDには自前のlibcがあるのに
newlibが必要なのかと言うところです。
googleで検索するとみんなやり方がばらばらで
調べれば調べるほどどんどんわからなくなっていきます。。。
0400393NGNG
このやり方はgoogleとEmbedde UNIX,、
UNIX USERのGBA特集(--targetの指定の仕方)を参考にしました。
長くなりましたがよろしくお願いします
0401393NGNG
何度もすいません

hostはAthlon-xp1800+(つまりi386)のNetBSDです。
0404名無しさん@お腹いっぱい。NGNG
っていうか、 .. って云ってるんだから gcc-3.3/ じゃなくてその上、
toolchain/ に置けばよさそうな気がする…
昔 cygwin で gcc compile したときも、一つ上に置いてたし。
0405393NGNG
>>402
VR4100シリーズのパイプライン最適化を試してみたいのです。
(GCC-3.3からなので)
効果がなるほどと思える物であれば
この先の3.4とかをプロジェクトに使おうかと・・・。
少しでも性能を上げたいんです、はい。

>>403-404
ではやってみます。
0406名無しさん@お腹いっぱい。NGNG
>>399
> ただわからないのは、BSDには自前のlibcがあるのに
> newlibが必要なのかと言うところです。

自前のlibcなんて、今後放置プレーなんじゃないの?
0411名無しさん@お腹いっぱい。NGNG
まあもともとは組み込みOS向けのちっこいlibcってことで開発
されたんだろうけど、いまとなってはCygwinが主要ターゲットって
説も…。
0413393NGNG
試行錯誤してました。
まず、>>403-404
install.shをばらまくのはどうもだめでした。

ここで途方に暮れること数日・・・・。
そこでNetBSD1.6.1のクロスtoolchainの構築をlogに残して
どんなことやってるのか見てみました。
あと、build.shで作ることの出来るmips用includeファイルと
libを使えば良いんじゃないかと思い
こんなconfigureオプションにしてみました。

binutils
./configure --prefix=/usr/local/cross \
--target=mipsel--netbsd --with-gnu-as --with-gnu-ld \
--disable-nls --disable-shared

gcc-3.3
./configure --prefix=/usr/local/cross \
--target=mipsel--netbsd --with-gnu-as --with-gnu-ld \
--disable-nls --disable-shared \
--with-headers=$mipsel_include_path --with-libs=$mipsel_libs_path

なんとかうまくいきましたが疑問が・・・・・。

このheaderとlibは、あるディレクトリ以下の閉じたソースで
includeファイルをmake時に決めうちする場合
このgcc-3.3でつくるオブジェクトには影響しないんですよね。

つまりはこのheaderとlibはgcc-3.3構築のみに
使われると思ってるんですが・・・
認識あってますでしょうか?
0414393NGNG
あとgcc-3.3のマニュアルには
-mno-half-pic -mhalf-picがあるんですが
しらないオプションと言われるんです。
gccのメーリングリストで見つけました。

昨年の6月に削除されたようです・・・。
そのためNetBSDカーネルコンパイルできない・・・・。

マニュアルアップデートしてないのホントですね
0417名無しさん@お腹いっぱい。NGNG
3.3.1 age
0421名無しさん@お腹いっぱい。NGNG
gccは糞
0423名無しさん@お腹いっぱい。NGNG
gccは糞
0426名無しさん@お腹いっぱい。NGNG
3.3.2age
0427名無しさん@お腹いっぱい。NGNG
Plamo Linux 2.2.6 上で gcc-3.3.2 をビルドしようとしてるんだが、

$ cd /usr/local/src
$ tar zxf ~/gcc-3.3.2.tar.gz
$ mkdir gccobj
$ cd gccobj
$ ../gcc-3.3.2/configure --prefix=/usr
$ make bootstrap

/bin/sh ./libtool --tag=CXX --mode=link /usr/local/src/gccobj/gcc/xgcc -shared-l
ibgcc -B/usr/local/src/gccobj/gcc/ -nostdinc++ -L/usr/local/src/gccobj/i686-pc-
linux-gnu/libstdc++-v3/src -L/usr/local/src/gccobj/i686-pc-linux-gnu/libstdc++-v
3/src/.libs -B/usr/i686-pc-linux-gnu/bin/ -B/usr/i686-pc-linux-gnu/lib/ -isystem
/usr/i686-pc-linux-gnu/include -L/usr/local/src/gccobj/i686-pc-linux-gnu/libjav
a -ffloat-store -g -O2 -o libgcj.la -objectlist libgcj.objectlist \
../boehm-gc/libgcjgc_convenience.la ../libffi/libffi_convenience.la ../zlib/libz
gcj_convenience.la \
-rpath /usr/lib/. -rpath /usr/lib/. -lpthread ./libltdl/libltdlc.la -version-i
nfo `grep -v '^#' ../../../gcc-3.3.2/libjava/libtool-version`

ここでループしちゃって帰ってこない。
なんでだろ?
0429427NGNG
>>428
修行がたりませんでした。
いい子にして待ちます。
ども。
0430427NGNG
長い...。
24 時間たっても終わらないよぅ(Celeron 1.4GHz)。
0431427NGNG
終わった...。
26 時間ばかりかかったです。

こーゆーのを見ると旧式になったのだなぁと思ふ。
0433427NGNG
いや、俺もそんなことはないと思いたいのだが、
1アプリにすぎない gcc のビルドに丸1日かかっちゃうと
ちょっと切ない気持ちになる。

フツーに使う分には十分な性能なんだがな。
0435 ◆Ir5kue8F32 NGNG
Status of processor 1 as of: 10/21/03 22:19:15
Processor has been on-line since 10/20/03 02:54:11.
The sparcv9 processor operates at 296 MHz,
and has a sparcv9 floating point processor.
Status of processor 3 as of: 10/21/03 22:19:15
Processor has been on-line since 10/20/03 02:54:12.
The sparcv9 processor operates at 296 MHz,
and has a sparcv9 floating point processor.

というマシンで今からビルドしてみます。
とれくらいかかるかな?
0436名無しさん@お腹いっぱい。NGNG
書きわすれた。
>>427
java で馬鹿みたいに時間喰ってるので、java を使用しないのであれば、
--enable-languages="c,c++,f77,objc,ada"
でかなり時間を節約できます。
0438名無しさん@お腹いっぱい。NGNG
libgcc_s.soをdynamic linkされるのがうっとおしいので
いつもspecsファイルを手で変更しているのですが、./configure
のオプションなどで変更できるのでしょうか?
0441427NGNG
あー、何も考えないで 427 の手順のままやっちまったよ。

>>434
CPU 1個のシステムでも結構効果上がる?
つか、試してみます。

>>436
ですね。
今までこんなに時間がかかったことがなかったから
ちとびっくりした。
3.3 のときはせいぜい数時間だったような。
0444 ◆Ir5kue8F32 NGNG
>>442
ちなみに、既にインストールされているものは手動で消さなきゃだめ。
0450名無しさん@お腹いっぱい。NGNG
Solaris で、マルチスレッドのコンパイル&リンクするときって、どうやるの?
0451名無しさん@お腹いっぱい。NGNG
#define _REENTRANT
#include <pthread.h>
#include <thread.h>

Sunのcc: -mt ... -lpthread [必要ならば -lrt]
gcc: -pthread ... -lpthread [必要ならば -lrt]
0453名無しさん@お腹いっぱい。NGNG
make age
0454オブジェクト指向促進運動NGNG
IT業界にアージャイル開発とデザインパターンを広めよう!

C言語を使ってかなり苦労したので
その苦労を最小限におさえるために
アージャイル開発、デザインパターンを
多くのプログラマに使って欲しいと思うことがある。

一種の挨拶みたいなものだね。
「なるべく挨拶を心がけましょう。」
「なるべき綺麗な字で書きましょう。」
のように

デザインパターンを使うこと、アージャイル開発することが
プログラマの習慣、常識になってほしい。

なんとか、デザインパターン文化、アージャイル開発文化を押し広げられたら・・・。

IT業界の将来はオブジェクト指向とアージャイル開発が握っています!
0456名無しさん@お腹いっぱい。NGNG
いまだに2.95ですが何か
0459名無しさん@お腹いっぱい。NGNG
Gnu is Not Unix
RMSおよびGNUはUNIX市場をぶち壊すことがその目的です。
LISP,関数型言語の繁栄のために日夜努力されているのです。
Allegroの商圏を踏み荒らすような真似をするはずも
ありません。
0463名無しさん@お腹いっぱい。NGNG
まあg++の作業はちょっと遅れてるっぽいし、
3.3の完成度は高いから、2年ぐらいは
新規のリリースなしでもいいかな〜なんて。
0465名無しさん@お腹いっぱい。NGNG
WE LOVE GCC!!!
0467461NGNG
>>462
できればrsyncだけでなくcvsupとかも動かしてくれるとディスクを
たくさんガリガリやらなくて済むんだけどな。
0468名無しさん@お腹いっぱい。NGNG
このスレの温度

 |  |- 20
 |  |
 |  |- 10
 |  |
 |  |-  0
 |  |
 |  |- -10  ∧_∧
 |┃|       (´∀` )
 |┃|       (    )
. (●)     | | |
   ̄     (_(__)
0469名無しさん@お腹いっぱい。NGNG
3.3の完成度は高いのか....(泣)

insn:HI 2040 2044 3203 137 ff01ebc0 (set (reg:DI 31 %i7 [32])
(fix:DI (fix:DF (reg:DF 32 %f0 [647])))) 166 {fix_truncdfdi2} (insn_list 2037 (nil))
(nil))
exif.c:673: internal compiler error: in reload_cse_simplify_operands, at reload1.c:8345
完全なバグ報告を送って下さい。
適切ならばプリプロセス後のソースをつけてください。
<URL:http://gcc.gnu.org/bugs.html>; を見れば方法が書いてあります。
gmake: *** [exif.o] Error 1
bash-2.05$ gcc -v
/opt/gnu/lib/gcc-lib/sparc-sun-solaris2.9/3.3.2/specs から spec を読み込み中
コンフィグオプション: ../gcc-3.3.2/configure --prefix=/opt/gnu --enable-languages=c,c++
スレッドモデル: posix
gcc バージョン 3.3.2
0470名無しさん@お腹いっぱい。NGNG
漏れは3つ位出したぞ。sparcじゃないけど。
マイナーなアーキテクチャの宿命だ。
メンテナが頑張ってくれているので消えることは無さそうだが。
0471名無しさん@お腹いっぱい。NGNG
少しぐらいのバギー加減は、ユーザーにコンパイラの内部動作に
関心持ってもらうためには必要だと思われ。とかいってみる。
0472名無しさん@お腹いっぱい。NGNG
>>471
emacs-21.3をleim入れてコンパイルしたら使い物にならないバイナリを吐くのも
啓発のためっすか?(泣)

最初 big-5 あたりでcore吐いていたので configure と Makefile いじれば
なんとかなるかと思って色々やってみたんだけど...

結局 3.2.3 にダウングレードしちゃった。手持ちソースではこちらの方が安定
しているみたいだし。
0475 ◆ieqrh9GF7Y NGNG
gccの挙動に関しての質問てどこに投げればいいの?
gcc-help ?
因みに質問は以下のコードをコンパイルすると if の部分
がなくなるのはなぜ?ってことなんだけど。

int hoge(signed char ch)
{
if ((unsigned short)ch > 127)
return 0;
return 1;
}
0479名無しさん@お腹いっぱい。NGNG
いまだにOpenBSD上でgcc2.95系使ってる俺って…
0480名無しさん@お腹いっぱい。NGNG
>>477
その説明はおかしい。
unsigned short にキャストしているから、
たとえば ch が -128 なら
(unsigned short の最大の値+1)-128になる。
大抵の環境で、unsigned short の最大の値は 127 より大きいので、
(unsigned short)ch は 127 よりおおきい値になり得る。
>>475
gccの問題のようですね。比較の相手を127でなくて1にしても
同じ症状が出ますから、charの範囲、という問題でもない。
0481名無しさん@お腹いっぱい。NGNG
>>480
> 大抵の環境で、unsigned short の最大の値は 127 より大きいので、
> (unsigned short)ch は 127 よりおおきい値になり得る。
そこで止まっちゃだめだよ。

もしch = -128だったら、unsigned shortにキャストした段階で符号ビットを
延長するので左辺は1...10000000。一方、右辺は整数定数127。これはサフィ
クスがない10進数でintで表現しきれるのでintとして扱われる。

比較演算子の左辺はunsigned short、右辺はintだから、演算を適用する前に
両方ともintへキャストされる。intはunsigned shortより小さいことはないか
ら、左辺のビットパターンはそのまま。よって最初のchが負の値の場合、キャ
スト後のintとしての左辺も必ず負の値になるので、この条件文は常に偽。
0483名無しさん@お腹いっぱい。NGNG
>>481
> intとしての左辺も必ず負の値になるので

なりませんよ。
signedをunsignedにしたばあい、unsignedの範囲に入るようにunsignedの最大値+1を
必要な回数だけ加算する。singed char -1をunsigned shortにした場合USHRT_MAXになる。
つぎに、int以下の整数演算はintに格上げされて演算される(右辺がintでなくても格上
げされる)が、値保存で変換されるのでUSHRT_MAXのまま。

unsigned shortがintより範囲が広い場合、両辺がunsigned shortに変換されて比較されるので、
結果は同じ。
0484名無しさん@お腹いっぱい。NGNG
>>481
ちがう。ch=-128 (10000000) で
unsigned short が 16 ビットだとしたら、
左辺は 1111111110000000 になる。これを int (符号付き)
に promote (キャストではない) させる。
int が 32 bit だとしても、unsigned short からの
変換だから、左に 1 は補われない。ゆえに、
00000000000000001111111110000000
になる。
0493 ◆ieqrh9GF7Y NGNG
例はバグを簡略化したものです。
>>484 同じ解釈です。
>>480 gcc の問題とすると報告すべきはどこ? <- 元の質問の意図
127 を 128 にすると、if は残る。逆に gcc -O0 で作っても
if 部分は影も形もなくなるので、Optimizer の仕業ではなく、
C言語仕様解釈の問題だと思ってる。
0495名無しさん@お腹いっぱい。NGNG
このプログラムのほうが問題点が明確になるかな。
i は明らかに 1より大きいのに、それを1と比較すると0になる。
-O0でも同じ。 gcc2.95.4だと期待した通りになる。
#include <stdio.h>

main()
{
char c = -128;
int f, i;
i = (unsigned short) c;
f = (unsigned short) c > 1;
printf("i => %d, i>1 => %d\n", i, f);
}
0497名無しさん@お腹いっぱい。NGNG
precompiled header に魅かれてgcc3.4インストールしたのに
>sorry, unimplemented: had to relocate PCH
って言われた。
どういうことじゃヽ(`Д´)ノ
0498名無しさん@お腹いっぱい。NGNG
>>495-496
C99では明示的にreturn 0;を書く必要はありませんね。
まあ gcc2.95.4 には関係ないことでしょうけど。
0501名無しさん@お腹いっぱい。NGNG
>>495を、
gcc -c -O -dra foo.c すると、"ce1"の後に消える。
gcc -c -O0 -dra foo.c すると、なぜかcompareは残ったままだね。
"mach"の後で消えてるのかな。

0502名無しさん@お腹いっぱい。NGNG
>>500
鋭いですね、そうですよ。
で、sizeof( 整数の型名 ) するとどれも1が返ってきてあせる(笑)
バイトアドレシッシングじゃなくてワードアドレッシングだからこれで正解なんだろうけど
0506名無しさん@お腹いっぱい。NGNG
>>505
gccの公式ページよりdistrowatchの方が早くアナウンスしてたのには
驚いた。
まだ使うにはたぶん危険だよね?パフォーマンスはアップしてるのかな?
0508名無しさん@お腹いっぱい。NGNG
>The cast-as-lvalue extension has been removed for C++ and deprecated for C and Objective-C.

これってANSIかなんかの規格がそうなってるのかな?
ときどき使ってるからちょと痛い
0519名無しさん@お腹いっぱい。NGNG
>>508
3.4.0でのビルドを試して見ましたが、3.3以前でOKだった、幾つかの作法の悪いプログラムは全滅ですね。
丁寧に直せばいいんでしょうけどね…
0523名無しさん@お腹いっぱい。NGNG
nmしたときやg++ -Sしたときに、コンストラクタやデストラクタに
Foo::Foo[in-charge]() のように[なんちゃら]と注釈が入っている場合がありますけど、
これって何ですか?どこかに解説ありませんか?

in-charge, not-in-charge, in-charge deleting などがあるようで...

0524名無しさん@お腹いっぱい。NGNG
ドスドスドスドス
この洗いを作ったのは誰だぁ!!
0526名無しさん@お腹いっぱい。NGNG
だな。
0527名無しさん@お腹いっぱい。NGNG
>>523
$(GCC)/gcc/cp/decl2.c
/* Constructors for types with virtual baseclasses need an "in-charge" flag
saying whether this constructor is responsible for initialization of
virtual baseclasses or not. All destructors also need this "in-charge"
flag, which additionally determines whether or not the destructor should
free the memory for the object.

$(GCC)/gcc/cp/mangle.c
/* Handle destructor productions of non-terminal <special-name>.
DTOR is a destructor FUNCTION_DECL.

<special-name> ::= D0 # deleting (in-charge) destructor
::= D1 # complete object (in-charge) destructor
::= D2 # base object (not-in-charge) destructor
0536名無しさん@お腹いっぱい。NGNG
Solaris9で、バイナリーのgcc-3.4.1をインスコしたら

ld.so.1: gcc: 重大なエラー: libiconv.so.2: open に失敗しました: ファイルもディレクトリもありません。
強制終了

となってしまいます。
2台やって2台とも同じでした。
iconvのバイナリーってどこで入手できますか?
0538名無しさん@お腹いっぱい。NGNG
GCC 3.4.2 age
0540名無しさん@お腹いっぱい。NGNG
3.4.1 から 3.4.2 に上げたら生成されるバイナリが
libgcc_s.so.1 をリンクするようになった。
このへん何か変わった?
0547名無しさん@お腹いっぱい。NGNG
Reading specs from /usr/local/lib/gcc/sparc-sun-solaris2.9/3.4.3/specs
Configured with: ../gcc-3.4.3/configure --disable-nls
Thread model: posix
gcc version 3.4.3
0548名無しさん@お腹いっぱい。NGNG
さてGCC4のリリースも近づきつつある今日この頃。
自分はこまめにビルド・チェックするほどの追っかけじゃなかったけど、GCC3というプロダクトはどのような評価に値する物だったのでしょか。

漏れには、伽藍時代よりテンポ良くリリースされていった分、各Linuxディストロもそれに振り回されてたような印象が。
あとGCC3は、例えば2.95.xや2.7.2.3並みに安定感のあるリリースがなされてたのでしょうか。

よろしければみんなの御意見、どぞ。
0553名無しさん@お腹いっぱい。05/01/27 12:55:20
あげ
0556名無しさん@お腹いっぱい。05/01/27 21:02:08
>>555
予定では近いうちに出るはずだが。

漏れ的にはsh-elfの-m2aが腐っているぽいのでもう少し待ってほしい所ですな。
0562名無しさん@お腹いっぱい。05/02/05 02:29:14
アナウンスが来てから12時間ほど経ったが…まだ復旧してないのか。
これは長引きそうだな。

まあ急ぐ用事も無いから別に構わんが。
0566名無しさん@お腹いっぱい。2005/04/27(水) 13:50:34
gcc-4.0 で fortran を使うにはどうしたらよいでしょうか?
0572名無しさん@お腹いっぱい。2005/04/28(木) 13:39:53
遅蒔きながら、祝・GCC 4.0リリース。

gcc.gnu.org/gcc-4.0/changes.html とかは当然読んだんだけれど、他のサイトでリリースに対する反応があったらURLコピペぷりーず。
0580名無しさん@お腹いっぱい。2005/05/18(水) 16:11:20
むぅ……。gcc-4.0.0 で rrdtool を作れない。
3.4.3 で作れたから困りゃしないんだけど。Solaris10。

checking if IEEE math works out of the box... no
checking if IEEE math works with the -ieee switch... no
checking if IEEE math works with the -qfloat=nofold switch... no
checking if IEEE math works with the -w -qflttrap=enable:zerodivide... no
checking if IEEE math works with the -mieee switch... no
checking if IEEE math works with the -q float=rndsngl switch... no
checking if IEEE math works with the -OPT:IEEE_NaN_inf=ON switch... no
checking if IEEE math works with the -OPT:IEEE_comparisons=ON switch... no
checking if IEEE math works with fpsetmask(0)... no
checking if IEEE math works with signal(SIGFPE,SIG_IGN)... no
configure: error:
Your Compiler does not do propper IEEE math ... Please find out how to
make IEEE math work with your compiler and let me know (oetiker@ee.ethz.ch).
Check config.log to see what went wrong ...
0581名無しさん@お腹いっぱい。2005/05/18(水) 17:40:26
むぅ……。top-3.5.1 もコケた。gcc-3.4.3 なら問題なし。
4.0 はまだ手を出すべきじゃないのかしらん。
0583名無しさん@お腹いっぱい。2005/05/18(水) 18:40:57
そうなんだけど、プログラムは専門外だから
ソースが悪いのかコンパイラが悪いのか切り分けできないんだもん。
0592名無しさん@お腹いっぱい。2005/05/25(水) 23:26:56
いるけ?
0596名無しさん@お腹いっぱい。2005/06/19(日) 20:03:25
惰性で見てるよこのスレ。
gcc が出たころは衝撃だったなー。
売りもんのコンパイラよりいい最適化コード吐くし、
gcc のソースコードとかマニュアルとか読んでぞくぞくしてた。




0607名無しさん@お腹いっぱい。2005/07/15(金) 07:16:29
gcc-4.0.1でperl-5.8.7がコンパイル出来ない。
miniperlがPATHどうこう言ってるけど、コンパイラの違いでそんなの影響出るんだろうか?
0609名無しさん@お腹いっぱい。2005/07/15(金) 09:20:30
>>608
少し上から貼ると、こんなかんじ

CCCMD = x86_64-pc-linux-gnu-gcc -DPERL_CORE -c -D_REENTRANT
-D_GNU_SOURCE -DTHREADS_HAVE_PIDS -fno-strict-aliasing -pipe
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O3 -mtune=k8 -march=k8
-msse3 -mfpmath=sse -ftracer -pipe -fforce-addr -minline-all-stringops
-mno-push-args -maccumulate-outgoing-args -fprefetch-loop-arrays
-fsched-spec-load -funit-at-a-time -Wall
x86_64-pc-linux-gnu-gcc -L/usr/local/lib -o miniperl \
miniperlmain.o opmini.o libperl.a -lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
./miniperl -w -Ilib -MExporter -e '<?>' || make minitest
make: [extra.pods] Error 1 (ignored)
./miniperl -Ilib configpm --heavy=lib/Config_heavy.pl configpm.tmp
Can't find configpm on PATH, '.' not in PATH.
make: *** [lib/Config.pm] Error 29

確かに、カレントディレクトリにconfigpmはあるんだけど。
0610名無しさん@お腹いっぱい。2005/07/15(金) 11:26:27
>>609
ふむ、よくわからんけど、config.sh の optim から最適化を外し
て、./Configure -S したあと、gmake するとか、thread 無しでコンパイルし
てみるとか。やってみたらどうかね。
06126072005/07/15(金) 15:45:30
やっぱり、インタプリタレベルスレッドを使わないと問題ないようです。
とりあえず、しばらくはperlだけ諦めます。
0613名無しさん@お腹いっぱい。2005/07/17(日) 09:20:16
libpcapがgcc-4.0.1だと死にました。実際はtcpdumpから呼び出されて死ぬんだけど。
もう詳しい事はわからん。
06156132005/07/17(日) 11:28:40
-O2なら平気で-O3だと駄目みたい。
他に何も指定して無くても。
アーキテクチャはx86_64です。

tcpdumpのexpression指定しなければ落ちません。

バックトレースは深すぎるので、適当に
-O3 -ggdb3でlibpcapを作って
-O0 -ggdb3でtcpdump作った結果。

#0 0x00002aaaaae3125b in icode_to_fcode () from /usr/lib/libpcap.so.0
#1 0x00002aaaaae3159c in icode_to_fcode () from /usr/lib/libpcap.so.0
#2 0x00002aaaaae33efd in bpf_optimize () from /usr/lib/libpcap.so.0
#3 0x00002aaaaae25c07 in pcap_compile () from /usr/lib/libpcap.so.0
#4 0x00000000004500f4 in ?? ()
#5 0x00002aaaaaf67893 in __libc_start_main () from /lib/libc.so.6
0618名無しさん@お腹いっぱい。2005/07/17(日) 17:21:39
どうなんでしょう。私は、gentoo linux使ってます。
4.1-CVSでもprofilebootstrap失敗するし、i386と比べたら安定してないんでしょうね。
0620名無しさん@お腹いっぱい。2005/07/18(月) 02:25:22
>>619
シグナル核の忘れてました。SEGVです。

dmesgが埋め尽くされてる。
tcpdump[24386]: segfault at 0000000000000030 rip 00002aaaaae3125b rsp 00007fffff82f1a8 error 4
0621名無しさん@お腹いっぱい。2005/07/18(月) 07:45:07
バウンダリ関係かねえ。
libpcapを-g付きでcompileしてdebugが王道だと思うけど、
-mpreferred-stack-boundary= 辺りを試してみるのもいいかもねえ。
-march=k8にはなっているよね?
0622名無しさん@お腹いっぱい。2005/07/18(月) 10:13:07
Linux 2.6.12.3にしてみたら動作が変わった…。

-O -finline-funcionsはokになりました。
-O2 -finline-functionsだと落ちます。
-O2はonになるフラグが多すぎて、ちょっと調べきれないです。

-finline-limitで11までに制限すればok。12以上で落ちます。
-march=k8指定、-mpreferred-stack-boundaryは4,8,12はどれも解決にはなりませんでした。

なんか、デバッグ情報が出るようになったので貼ってみます。libpcap-0.9.3です。
#0 find_levels_r (b=0x0) at optimize.c:222
#1 0x00002aaaaae2df2b in find_levels_r (b=0x6fe7b0) at optimize.c:230
#2 0x00002aaaaae2df1f in find_levels_r (b=0x6fdbc8) at optimize.c:229
#3 0x00002aaaaae2ec40 in opt_loop (root=0x6fdbc8, do_stmts=0)
at optimize.c:251
#4 0x00002aaaaae303fc in bpf_optimize (rootp=0x2aaaaaf463e0)
at optimize.c:1740
#5 0x00002aaaaae2592a in pcap_compile (p=0x6fd2b0, program=0x7fffffaf1260,
buf=0x6fd120 "port 80", optimize=1, mask=16777215) at gencode.c:386
#6 0x00000000004500f4 in ?? ()
#7 0x00002aaaaaf63893 in __libc_start_main () from /lib/libc.so.6

gcc-4.0.1で-fstack-check, 3.4.4で-fstack-protector使ってみたけど何も出ませんでした。
0623名無しさん@お腹いっぱい。2005/07/18(月) 10:38:15
ifのjumpかな?
-Osだとどうだろう。

-falign-functions -falign-jumps -falign-loops -falign-labels
-freorder-blocks -fprefetch-loop-arrays がオフ。
0624名無しさん@お腹いっぱい。2005/07/18(月) 11:19:08
-fno-strict-aliasing
をつけるとどうなる?

ttp://makimo.to/2ch/pc8_unix/1106/1106041204.html#582
ttp://slashdot.jp/comments.pl?sid=175355&cid=537217
0625名無しさん@お腹いっぱい。2005/07/18(月) 11:35:46
>>623
-Osはだめでした。

>>624
いけました。ばっちりです。
いろいろ問題ありそうですけど、今のところこれ以外当たってないんですよね。
portageつかってるから、まずいのがわかっている場合は回避してる可能性がありますが。
0626名無しさん@お腹いっぱい。2005/09/18(日) 16:40:56
gcc4は-O1でも-fprefetch-loop-arrays効くのかな
0635名無しさん@お腹いっぱい。2005/11/28(月) 17:33:48
gcc-2.9では通るのにgcc-3.3では voidのとこでエラーになるんですが何故?
prase error before `!' token

0639名無しさん@お腹いっぱい。2005/11/29(火) 19:12:21
先生! 問題を明確にしない限り、答える事もできないと思います!
\  
   ̄ ̄ ̄V ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
     ∧_∧∩
    ( ・∀・)/
 _ / /   /  
\⊂ノ ̄ ̄ ̄ ̄\
 ||\        \
 ||\|| ̄ ̄ ̄ ̄ ̄||
 ||  || ̄ ̄ ̄ ̄ ̄||
0648名無しさん@お腹いっぱい。2006/02/25(土) 21:54:59
4.1って安定版?
0650名無しさん@お腹いっぱい。2006/02/26(日) 00:37:13
>649
完成したら4.2として公開されるのでしょうか?
0652名無しさん@お腹いっぱい。2006/02/26(日) 22:37:36
>>650
4.1が完成したら4.1として公開されますよ。
Linuxみたいに「このバージョンは安定版、このバージョンは実験版」
という区別はありません。
06536482006/02/26(日) 23:58:48
どうもありがとうございました
0659名無しさん@お腹いっぱい。2006/03/02(木) 04:56:28
maji?
0664名無しさん@お腹いっぱい。2006/03/05(日) 11:34:19
>>663 kwsk
0665!= 6332006/03/05(日) 15:06:27
>>664
十分に詳しいと思うが。もっと必要ならWikiなりML Archiveなり漁るが良し。
0670名無しさん@お腹いっぱい。2006/03/14(火) 10:19:50
sparc Solaris9 でlibtool と texinfo 入れて --disable-libgcj したらなんとか
gcc4.1.0コンパイルできた・・・
-m64 も使える。さて、何からやるか。
0671名無しさん@お腹いっぱい。2006/03/15(水) 17:53:04
ちょっとコンパイルしてみたけど、以前のバージョンなら通ってたものが
エラーになるね。
error: static declaration of 'XXXXX' follows non-static declaration
とか、、、該当行のstatic外したら通ったが。
0672名無しさん@お腹いっぱい。2006/03/19(日) 02:39:52
4系列になってから、全体的にCの構文に厳しくなったらしい。
muttなんかも構文警告が構文エラーになって、ビルドできなかった事がある。
0675名無しさん@お腹いっぱい。2006/03/25(土) 16:36:31
gcc4.1.0でgcc4.1.0を何回もコンパイルすると不定期にアセンブラが.identが見付からないよと言う壊れたコンパイラになる
0679名無しさん@お腹いっぱい。2006/05/30(火) 20:31:56
GCCもそうだけど、GNUのツールってだいぶLinux-centricに
なってきて、広い影響力は以前より落ちている気がするね。
0680名無しさん@お腹いっぱい。2006/05/31(水) 15:24:52
NetBSD-currentなんかも、ずっと3.3.3のまんまだもんな。

*BSDにおいてはGNU関連ツールは使わざるを得ないから使ってると
誰かが雑誌で言ってたな。
0681名無しさん@お腹いっぱい。2006/05/31(水) 20:49:12
NetBSDは只今GCC4に切り替え中。

確かに NetBSD ぐらい CPU に対応してると、それ全部で使えるコンパイラを
新たに用意するのは難しいでしょうね。
GCCでもマイナーなCPUは切り捨てそうですけど。
0683名無しさん@お腹いっぱい。2006/09/03(日) 11:45:37
gcc 大きくなりすぎ
もっと軽い free な cc ないんだっけ?
0686名無しさん@お腹いっぱい。2006/09/04(月) 00:21:07
>>683
TenDRAを入れたいんだが未手付
ttp://www.tendra.org/
ttp://www.ten15.org/

後lccというのがある
ttp://www.cs.princeton.edu/software/lcc/
0687名無しさん@お腹いっぱい。2006/09/04(月) 02:43:19
吐くコードが小さくて速けりゃgccが大きくたって問題はなかろうに。
軽い処理系だと十分なoptimizeができるとは思えんが。
0694名無しさん@お腹いっぱい。2007/10/18(木) 17:53:02
>>681
gccの問題というより、
NetBSDの方がバージョン移行のCPUテスター不足なんじゃないの?
Linuxはバージョン上げるのに成功しているし。
マイナーだと厳しいよね。
0696名無しさん@お腹いっぱい。2008/02/16(土) 21:02:53
「Linuxは」というほどディストリでgccの扱い共通してない。
カーネルがgcc依存ってのくらい。
0697名無しさん@お腹いっぱい。2008/06/06(金) 17:54:46
Fedora Core辺りは、
> とりあえずバージョン上げて、何かあったら大騒ぎする
のが仕事だしね。
0698名無しさん@お腹いっぱい。2008/06/24(火) 22:58:25
ほう、ついにGCC3.0が出たのか・・・時代の最先端を行く俺には欠かせないツールになるよ
0699名無しさん@お腹いっぱい。2008/08/11(月) 12:31:36
ところで、昔のC言語ではダメだったのに、今のCコンパイラでは
double sqrt(double); に
sqrt(2) とか引数に整数などdouble でないものを書いてもちゃんと
コンパイルして2の平方根の近似値を返すのはどうして?
プロトタイプ宣言を元にして、引数の型の自動変換が行われるの?
それってC++の仕様じゃないかな?
0700名無しさん@お腹いっぱい。2008/08/11(月) 12:46:07
タイムトラベラーの方ですか?

C89以降、関数のプロトタイプ宣言(とそれに基いた昇格)はCでも当たり前の事ですが。
0701名無しさん@お腹いっぱい。2008/08/11(月) 16:11:49
ついでに質問しちゃおう。xを変数とするとき、

x = x++;

という代入文は、結果がどうなるか不定だと思うんだけども、
そこのあたりどうなっているでしょうか?
0703名無しさん@お腹いっぱい。2008/08/11(月) 16:21:06
>>701
おいおい、よく見てみろ。(例が悪いよ)
= と ++ の動作が、どちらが先だとしても x の値は +1 されるだろ。
よって、結果がどうなるか不定ではない。
0705名無しさん@お腹いっぱい。2008/08/11(月) 16:28:20
せっかく2.95を超える世界制覇バージョンとなることが約束された3.0がリリースされたのに
他に言うことはないのか?
0707名無しさん@お腹いっぱい。2008/08/11(月) 17:54:18
「シーケンスポイントに関する規約」に適合していないプログラムは
実行結果が保証されないことが分かった。
 さて、そうなると、規約を破っているソースコードに対しては、
それを警告してくれるコンパイラの機能が望まれる。
GCCではそのあたりがどうなっているのだろうか?
0711名無しさん@お腹いっぱい。2008/08/12(火) 11:18:38
投票所を作って、反対意見が出ないようなら削除依頼とかな
依頼してもなかなか削除されねーけど
0718名無しさん@お腹いっぱい。NGNG?2BP(0)
OpenBSDは未だに、2.95ですね。
0719名無しさん@お腹いっぱい。2009/01/11(日) 15:34:03
gccで関数プロトタイプ宣言を自動的に生成する機能があると聞いたのですが、
ぐぐってみてもそのような機能は見つかりませんでした。
もし本当にそういう機能があれば、どなたか教えていただけないでしょうか。
またgccに限らず、*.cから*.hを自動的に生成するツールについておすすめのものがあれば教えてください。
0720名無しさん@お腹いっぱい。2009/01/11(日) 19:31:36
GCC3スレにようこそw

ttp://www.kouno.jp/home/c_faq/c11.html#31
> 関数プロトタイプの自動生成ソフトはいくつか存在する。多くはlint に手を
> 入れたものになっている。CPROTOというプログラムが1992年3 月に
> comp.sources.miscにポストされた。他にもcextractというツー ルが存在する。
> コンパイラのベンダーの多くは単純なユーティリティー を用意している。
> 質問18.16も参照のこと。(古いコード用にプロトタ イプを生成するときは"狭い"
> 引数に注意すること。質問11.3も参照の こと。)

gccにそういう機能ってあったかなぁ
0721名無しさん@お腹いっぱい。2011/06/11(土) 00:12:40.83
class A { public: A(){} };

class B : public A
{
B() {A::A();}
};


↑こういうコードで、g++-4.1.2だとエラーなし、
g++-4.6.0だと cannot call constructor 'B::A' directly
というエラーが出ます。どう修正するのが適切ですか?
0722名無しさん@お腹いっぱい。2011/06/11(土) 07:25:12.63
>>721
class A { public: A(){} };

class B : public A
{
B() {}
};

で、暗黙的にAのコンストラクタが呼ばれる。
もしくは、渡す引数があれば、
class A { public: A(int arg){} };

class B : public A
{
B() : A(123) {}
};
とする。
0723名無しさん@お腹いっぱい。2011/06/11(土) 08:59:42.53
>>722
ありがとうございます。それでやってみます。

ところで、逆に Bをコンストラクトする時に、
暗黙にAのコンストラクタを呼ばないようにするにはどうしたらいいですか?
0724名無しさん@お腹いっぱい。2011/06/11(土) 09:04:05.21
>>723
理屈上おかしいし、それは多分できない。

実装上は、Aに何もしないコンストラクタを用意すれば、呼ばれてないのと同じことにはなるかもしれない。
0725名無しさん@お腹いっぱい。2011/06/11(土) 09:20:46.87
>>724
できないんですね。わかりました

ところで、最初の >>721 の質問のように
わざわざ継承元のコンストラクタを呼んでるようなコードが
複数のソフトで見つかるんですが
これ、何か意味があったのではないのでしょうか?
それとも、こういう誤解が広範囲に広まっていたのでしょうか?
0726名無しさん@お腹いっぱい。2011/06/11(土) 12:08:55.06
>>725
実はC++に詳しくないので、そういう書き方があったのは初めて知った。
今の言語規格にはないやり方で、わざわざ利用しているとしたら、理由はわからない。

ただ、今の言語規格ではAのコンストラクタは必ずBのコンストラクタに先立って実行されるので、
継承元のコンストラクタを呼んでるようなコードが、Bのクラスの一番初めの実行文でない場合、
処理の実行に影響がないかどうかは気をつけないといけないと思う。
0727名無しさん@お腹いっぱい。2011/06/11(土) 17:30:51.28
>>725
コンストラクタを呼んでるつもりで、実は一時オブジェクトを作って捨ててるだけ、ってのはたまに見る。
公開されてるソフトにそんなの入ってるとは思わないけどな。
ソフト名を晒してくれると面白いかもしれない。
0728名無しさん@お腹いっぱい。2011/06/11(土) 17:36:41.18
初期化子は結構早い段階で規格に入っているしなあ。
"annotated"の頃には入っていたんじゃない?
0729名無しさん@お腹いっぱい。2011/06/11(土) 17:59:56.17
>>727
kdeaddons-3.5.10の中の kate/tabbarextension/plugin_katetabbarextension.h
というファイルでそういう箇所があります。(本家で公開されてるソースです)

gccのバージョンを上げるとエラーになるため、問題が発覚します。
0730名無しさん@お腹いっぱい。2012/09/14(金) 21:23:43.48
GNU asで、

mov (%ebx), %eax ← ディスプレイスメント(オフセット)なし
mov 0x12(%ebx), %eax ← 8bitディスプレイスメント
mov 0x12345678(%ebx), %eax ← 32bitディスプレイスメント

のようなアドレッシングモードがあって、
ディスプレイスメントのサイズの違う各命令のどれを使うかは
アセンブル時に実際の値で判断して自動決定されますが、

敢えてディスプレイスメントのサイズを明示指定するにはどう書けばいいんでしょう?

たとえば、強制的に32bitディスプレイスメントの命令を使いたいのですが、
mov 0x00000000(%ebx), %eax とか書いても
mov (%ebx), %eax でアセンブルされてしまいます。(dispなし)

mov 0x00000012(%ebx), %eax とか書いても
mov 0x12(%ebx), %eax でアセンブルされてしまいます。(dispは8bit)

(わかってるとは思いますが、オペランドのデータサイズのことではありません)

命令コードを直接.byteで書け、はナシでお願いします。

わかる方いますか?
07317302012/09/15(土) 10:44:48.95
自己解決しました
0736名無しさん@お腹いっぱい。2012/09/15(土) 22:13:01.41
このスレなんですか
0737名無しさん@お腹いっぱい。2012/09/16(日) 16:27:31.40
今月はじめ、職場に新しい組み込みマシン(ファンレスの結構省電力構成)が入りました。
多分私が開発全般をまかされそうな雰囲気です。業務的にとある構造分析や
シミュレーションなど行う必要があり、プログラムにアセンブラを使用するのは
聞いていたのですが、添付のサンプルソースコードからチラッと見えたのは
LD A,(HL)という命令でした。

「うへぇ〜、よりによってZ80かよ」

アドレッシングモード皆無、リロケート不可、使いにくいインデックスレジスタ、
今時の関数引数のスタック渡しに対応できるのか不安はつきませんし、
今の若者はこんなCPU使わないので人材も少なくソフト開発も大変です。
おそらく導入に際して、大学など教育機関で最初にZ80に触れて刷りこまれた人間が
強気の知ったかぶりをして発言権を得て「俺流」をつらぬき紛れ込ませたのでしょう。

昔、当時、8bitCPUでi8080上位互換でi8085よりも多くのツギハギ命令を追加拡張した
Z80は大学など教育機関に浸透していて、日本のCPU界に多くのバカが輩出しました。

これから私は、おそらくそういうバカが、ADD A,(HL)はできるのにADD B,(HL)は
できないのかとか、相対アドレスのCALL命令はないのとか、
スタックフレームポインタとして使いたいのにLD HL,SPっていう命令ないじゃんとか、
アセンブラ通気取りの偏ったどうでもいい我侭を言い出し(だからZ80使うんじゃねーよ)
それと戦わなければならないのでしょう。そして時代によって決着している、
過去30余年のCPU界隈のくだらないそれらの議論が再現され、それに巻き込まれるの
でしょう。もう今からうんざりです。

だからお願いです。教育現場ではi386でもi568でもi686でも
x86_64でもなんでもいいですが現行のCPUにしてください。

教育機関で懐古趣味のバカを量産されると現場が非常に苦労するのです。
0739名無しさん@お腹いっぱい。2012/09/16(日) 21:18:01.14
>>737
ネタニマジレスするとLD HL,SPは LD HL,0 / ADD HL,SP で桶。
スタックフレームならオフセット加算は必須なので、
オフセットを先にHLにロードしておいてからSPを加算する。
例えば関数の第1引数ならreturn addressの2byteの次だから、
LD HL,2 / ADD HL,SP ってやって、以降(HL)で値を取ってくる。
0751名無しさん@そうだ選挙に行こう2014/12/13(土) 21:22:45.35
質問です。

gccって、同じ文字列をまとめて最適化してくれますよね、
ソース中に複数 "hogehoge" と "hogehoge" のように同じ文字列があった場合。

ソースファイルが1個の時はこれでいいんですが、
ソースが file1.c と file2.c に分かれてる時、
file1.c に "hogehoge" があって、file2.c にも同じ "hogehoge" があっても
コンパイル(リンク)したときにまとめてくれません。(同じ文字列2回埋め込まれる)
これをひとつにまとめるオプションか何かありますか?
0757名無しさん@お腹いっぱい。2017/12/29(金) 08:29:08.69
誰でも簡単にパソコン1台で稼げる方法など
参考までに、
⇒ 『宮本のゴウリエセレレ』 というブログで見ることができるらしいです。

グーグル検索⇒『宮本のゴウリエセレレ』

2W2K6U86K8
0758名無しさん@お腹いっぱい。2018/02/14(水) 10:11:43.60
☆ 日本の、改憲をしましょう。現在、衆議員と参議院の両院で、
改憲議員が3分の2を超えております。『憲法改正国民投票法』、
でググってみてください。国会の発議はすでに可能です。
平和は勝ち取るものです。お願い致します。☆☆
0759名無しさん@お腹いっぱい。2018/05/22(火) 05:31:34.70
知り合いから教えてもらったパソコン一台でお金持ちになれるやり方
時間がある方はみてもいいかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

S7M7A
0760名無しさん@お腹いっぱい。2020/11/29(日) 11:59:18.98
バカでかいなんでもかんでも突っ込んだパッケージ、


そろそろ止めたら?


C、C++、以外は分けろ
レスを投稿する


ニューススポーツなんでも実況