# Signature of exit() on C++

**URL:** <https://www.ruby-forum.com/t/signature-of-exit-on-c/121895>\
**Category:** Development\
**Created:** [December 2, 2007, 2:09pm UTC](https://www.ruby-forum.com/t/signature-of-exit-on-c/121895 "2007-12-02T14:09:04Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![KISHIMOTOS\_Makoto](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/8baadc/32.png) [@KISHIMOTOS\_Makoto](https://www.ruby-forum.com/u/KISHIMOTOS_Makoto)\
**Post date:** [December 2, 2007, 2:09pm UTC](https://www.ruby-forum.com/t/signature-of-exit-on-c/121895/1 "2007-12-02T14:09:04Z")

</div>

e$B$-$7$b$H$G$9e(B

trunk(rev. 14078) e$B$G!"$3$N$h$&$Ke(B mecab-ruby e$B$Ne(B make  
e$B$G%3%1$^$9!#e(B

$ make  
g++ -I. -I/usr/local/include/ruby-1.9/i686-linux  
-I/usr/local/include/ruby-1.9 -I. -DHAVE\_MECAB\_H -D\_FILE\_OFFSET\_BITS=64  
-fPIC -g -O2 -c MeCab\_wrap.cpp  
/usr/include/stdlib.h:646: error: declaration of e$B!Fe(Bvoid exit(int)  
throw ()e$B!Ge(B throws different exceptions  
/usr/local/include/ruby-1.9/i686-linux/ruby/config.h:9: error: from  
previous declaration e$B!Fe(Bvoid exit(int)e$B!Ge(B  
make: \*\*\* [MeCab\_wrap.o] Error 1

e$B4X78$"$k$+$I$&$+$o$+$j$^$;$s$,!"e(BFedora Core 6 e$B$G$9!#e(B  
$ rpm -qf /usr/include/stdlib.h  
glibc-headers-2.5-18.fc6  
$ rpm -qf /usr/bin/g++  
gcc-c+±4.1.2-13.fc6

e$B4X78$7$F$$$k%X%C%@$N5-=R$O$3$s$J46$8$G$9!#e(B

/usr/include/stdlib.h  
646 extern void exit (int \_\_status) \_\_THROW **attribute**  
(( **noreturn** ));

/usr/local/include/ruby-1.9/i686-linux/ruby/config.h  
8 #ifdef \_\_cplusplus  
9 void exit (int);  
10 #endif

Ruby e$B$NB&$NLdBj$N$h$&$K;W$$$^$7$?$N$G$3$A$i$KEj$2$^$7$?!#e(B  
e$BB\>$Ne(B C++ e$B$J3HD%%b%8%e!\<%k$G$OBg\>fIW$J$N$G$7$g$&$+!)e(B

---

<div class="post-metadata">

**Author:** ![KISHIMOTOS\_Makoto](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/8baadc/32.png) [@KISHIMOTOS\_Makoto](https://www.ruby-forum.com/u/KISHIMOTOS_Makoto)\
**Post date:** [December 2, 2007, 2:21pm UTC](https://www.ruby-forum.com/t/signature-of-exit-on-c/121895/2 "2007-12-02T14:21:20Z")

</div>

e$B$J$+$@$G$9!#e(B

At Sun, 2 Dec 2007 22:08:11 +0900,  
KISHIMOTO, Makoto wrote in [ruby-dev:32434]:

> Ruby e$B$NB&$NLdBj$N$h$&$K;W$$$^$7$?$N$G$3$A$i$KEj$2$^$7$?!#e(B  
> e$BB\>$Ne(B C++ e$B$J3HD%%b%8%e!\<%k$G$OBg\>fIW$J$N$G$7$g$&$+!)e(B

e$B;d$N$H$3$m$G$Oe(Bconfig.he$B$K$O%W%j%W%m%;%C%5L?Na0J30$O$J$$$N$G$9$,!"e(B  
e$B$I$N%P!\<%8%g%s$Ne(Bautoconfe$B$r;H$C$?$N$G$7$g$&$+!#e(B

---

<div class="post-metadata">

**Author:** ![KISHIMOTOS\_Makoto](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/8baadc/32.png) [@KISHIMOTOS\_Makoto](https://www.ruby-forum.com/u/KISHIMOTOS_Makoto)\
**Post date:** [December 2, 2007, 4:14pm UTC](https://www.ruby-forum.com/t/signature-of-exit-on-c/121895/3 "2007-12-02T16:14:59Z")

</div>

> > /usr/local/include/ruby-1.9/i686-linux/ruby/config.h  
> > 8 #ifdef \_\_cplusplus  
> > 9 void exit (int);  
> > 10 #endif
> > 
> > Ruby e$B$NB&$NLdBj$N$h$&$K;W$$$^$7$?$N$G$3$A$i$KEj$2$^$7$?!#e(B  
> > e$BB\>$Ne(B C++ e$B$J3HD%%b%8%e!\<%k$G$OBg\>fIW$J$N$G$7$g$&$+!)e(B
> 
> e$B;d$N$H$3$m$G$Oe(Bconfig.he$B$K$O%W%j%W%m%;%C%5L?Na0J30$O$J$$$N$G$9$,!"e(B  
> e$B$I$N%P!\<%8%g%s$Ne(Bautoconfe$B$r;H$C$?$N$G$7$g$&$+!#e(B

2.59 e$B$G$7$?!#Aa$9$.$^$7$?$+e(B…

$ autoconf --version  
autoconf (GNU Autoconf) 2.59  
$ rpm -q autoconf  
autoconf-2.59-12

---

<div class="post-metadata">

**Author:** ![KISHIMOTOS\_Makoto](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/8baadc/32.png) [@KISHIMOTOS\_Makoto](https://www.ruby-forum.com/u/KISHIMOTOS_Makoto)\
**Post date:** [December 3, 2007, 5:13am UTC](https://www.ruby-forum.com/t/signature-of-exit-on-c/121895/4 "2007-12-03T05:13:23Z")

</div>

> 2.61e$B$G$Oe(Bexit()e$B$N@k8@\<+BN$7$J$/$J$C$F$$$k$h$&$G$9$,!"e(Bsnapshote$B$K$"e(B  
> e$B$ke(Bconfiguree$B$be(B2.59e$B$G:n$i$l$?$b$N$G!"e(Bstd::exit()e$B$de(Bthrow ()e$B$D$-$N@ke(B  
> e$B8@$b;n$7$F$$$k$h$&$K8+$($^$9!#0lEY!"e(BCXXe$B$rL@\<($7$Fe(Bconfiguree$B$r;n$7e(B  
> e$B$F$\_$F$b$i$($^$;$s$+!#e(B

e$B:rLk$N%9%J%C%W%7%g%C%H$G!“e(BCXX=g++ …/configure  
e$B$7$F$\_$^$7$?$,$3$s$J46$8$G$9!#e(B  
e$B!J$$$D$N%9%J%C%W%7%g%C%H$+$r3NG’$9$kJ}K!$O$”$k$N$G$7$g$&$+!)!Ke(B

$ head -15 .ext/include/i686-linux/ruby/config.h

#define PACKAGE\_NAME “”  
#define PACKAGE\_TARNAME “”  
#define PACKAGE\_VERSION “”  
#define PACKAGE\_STRING “”  
#define PACKAGE\_BUGREPORT “”  
#define USE\_BUILTIN\_FRAME\_ADDRESS 1  
#ifdef \_\_cplusplus  
extern “C” void std::exit (int) throw (); using std::exit;  
#endif  
#define STDC\_HEADERS 1  
#define HAVE\_SYS\_TYPES\_H 1  
#define HAVE\_SYS\_STAT\_H 1  
#define HAVE\_STDLIB\_H 1  
#define HAVE\_STRING\_H 1

---

<div class="post-metadata">

**Author:** ![KISHIMOTOS\_Makoto](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/8baadc/32.png) [@KISHIMOTOS\_Makoto](https://www.ruby-forum.com/u/KISHIMOTOS_Makoto)\
**Post date:** [December 2, 2007, 5:38pm UTC](https://www.ruby-forum.com/t/signature-of-exit-on-c/121895/5 "2007-12-02T17:38:49Z")

</div>

e$B$J$+$@$G$9!#e(B

At Mon, 3 Dec 2007 00:12:40 +0900,  
KISHIMOTO, Makoto wrote in [ruby-dev:32436]:

> > e$B;d$N$H$3$m$G$Oe(Bconfig.he$B$K$O%W%j%W%m%;%C%5L?Na0J30$O$J$$$N$G$9$,!"e(B  
> > e$B$I$N%P!\<%8%g%s$Ne(Bautoconfe$B$r;H$C$?$N$G$7$g$&$+!#e(B
> 
> 2.59 e$B$G$7$?!#Aa$9$.$^$7$?$+e(B…
> 
> $ autoconf --version  
> autoconf (GNU Autoconf) 2.59  
> $ rpm -q autoconf  
> autoconf-2.59-12

2.61e$B$G$Oe(Bexit()e$B$N@k8@\<+BN$7$J$/$J$C$F$$$k$h$&$G$9$,!"e(Bsnapshote$B$K$"e(B  
e$B$ke(Bconfiguree$B$be(B2.59e$B$G:n$i$l$?$b$N$G!"e(Bstd::exit()e$B$de(Bthrow  
()e$B$D$-$N@ke(B  
e$B8@$b;n$7$F$$$k$h$&$K8+$($^$9!#0lEY!"e(BCXXe$B$rL@\<($7$Fe(Bconfiguree$B$r;n$7e(B  
e$B$F$\_$F$b$i$($^$;$s$+!#e(B

---

<div class="post-metadata">

**Author:** ![KISHIMOTOS\_Makoto](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/8baadc/32.png) [@KISHIMOTOS\_Makoto](https://www.ruby-forum.com/u/KISHIMOTOS_Makoto)\
**Post date:** [December 3, 2007, 6:53am UTC](https://www.ruby-forum.com/t/signature-of-exit-on-c/121895/6 "2007-12-03T06:53:18Z")

</div>

e$B$J$+$@$G$9!#e(B

At Mon, 3 Dec 2007 13:10:07 +0900,  
KISHIMOTO, Makoto wrote in [ruby-dev:32440]:

> > 2.61e$B$G$Oe(Bexit()e$B$N@k8@\<+BN$7$J$/$J$C$F$$$k$h$&$G$9$,!"e(Bsnapshote$B$K$"e(B  
> > e$B$ke(Bconfiguree$B$be(B2.59e$B$G:n$i$l$?$b$N$G!"e(Bstd::exit()e$B$de(Bthrow ()e$B$D$-$N@ke(B  
> > e$B8@$b;n$7$F$$$k$h$&$K8+$($^$9!#0lEY!"e(BCXXe$B$rL@\<($7$Fe(Bconfiguree$B$r;n$7e(B  
> > e$B$F$\_$F$b$i$($^$;$s$+!#e(B
> 
> e$B:rLk$N%9%J%C%W%7%g%C%H$G!"e(BCXX=g++ …/configure e$B$7$F$\_$^$7$?$,$3$s$J46$8$G$9!#e(B

e$B$\*$=$i$/F1$8%9%J%C%W%7%g%C%H$@$H;W$$$^$9$,!"\<j85$G;n$7$?$H$3$me(B  
CXXe$B$r;XDj$7$J$/$F$bF1$87k2L$K$J$j$^$7$?!#e(B

e$B$`$7$m!"e(B[ruby-dev:32434]e$B$G$Oe(Bg++e$B$,;H$o$l$F$$$k$N$Ke(BC++e$B7A\<0$N@k8@$Ke(B  
e$B$J$C$F$$$J$$$3$H$,IT;W5D$G$9!#e(Btrunke$B$r%3%s%Q%$%k$7$?$H$-$K$be(Bg++e$B$,e(B  
e$B;H$($k\>uBV$@$C$?$N$G$7$g$&$+!#e(B

> e$B!J$$$D$N%9%J%C%W%7%g%C%H$+$r3NG’$9$kJ}K!$O$"$k$N$G$7$g$&$+!)!Ke(B

e$BD\>@%j%S%8%g%s$rD4$Y$kJ}K!$O$“$j$^$;$s!#%A%'%C%/%”%&%H$5$l$?D\>8ee(B  
e$B$Ke(Bconfiguree$B$,@8@.$5$l$F$$$k$O$:$J$N$G!"$=$N;~9o$+$iD4$Y$k$7$+$Je(B  
e$B$$$G$7$g$&!#e(B

$ svn info -r{“$(find ruby/configure -printf “%TY-%Tm-%Td %TT”)”}  
[http://svn.ruby-lang.org/repos/ruby/trunk](http://svn.ruby-lang.org/repos/ruby/trunk)  
e$B%Q%9e(B: trunk  
URL: [http://svn.ruby-lang.org/repos/ruby/trunk](http://svn.ruby-lang.org/repos/ruby/trunk)  
e$B%j%]%8%H%j$N%k!\<%He(B: [http://svn.ruby-lang.org/repos/ruby](http://svn.ruby-lang.org/repos/ruby)  
e$B%j%]%8%H%je(B UUID: b2dd03c8-39d4-4d8f-98ff-823fe69b080e  
e$B%j%S%8%g%se(B: 14088  
e$B%N!\<%I\<oJLe(B: e$B%G%#%l%/%H%je(B  
e$B:G=\*JQ99\<Te(B: akr  
e$B:G=\*JQ99%j%S%8%g%se(B: 14088  
e$B:G=\*JQ99F|;~e(B: 2007-12-03 00:46:21 +0900 (e$B7ne(B, 03 12e$B7ne(B  
2007)

---

<div class="post-metadata">

**Author:** ![KISHIMOTOS\_Makoto](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/8baadc/32.png) [@KISHIMOTOS\_Makoto](https://www.ruby-forum.com/u/KISHIMOTOS_Makoto)\
**Post date:** [December 3, 2007, 1:58pm UTC](https://www.ruby-forum.com/t/signature-of-exit-on-c/121895/7 "2007-12-03T13:58:58Z")

</div>

> e$B$`$7$m!"e(B[ruby-dev:32434]e$B$G$Oe(Bg++e$B$,;H$o$l$F$$$k$N$Ke(BC++e$B7A\<0$N@k8@$Ke(B  
> e$B$J$C$F$$$J$$$3$H$,IT;W5D$G$9!#e(Btrunke$B$r%3%s%Q%$%k$7$?$H$-$K$be(Bg++e$B$,e(B  
> e$B;H$($k\>uBV$@$C$?$N$G$7$g$&$+!#e(B

e$B$\*A{$,$;$7$^$7$?!#%S%s%4$G$7$?e(B

mecab-ruby e$B$re(B make e$B$7$h$&$H$7$Fe(B g++  
e$B$,L5$+$C$?$N$GF~$l$?5-21$,e(B  
e$B$"$j$^$9$N$G!"$=$&$$$&$3$H$G$7$?e(B  
e$B!Je(Bg++e$B$,F~$C$F$J$$4D6-$C$F$J$s$J$s$@$h!"$H8@$o$l$=$&e(B…e$B!Ke(B
