# Defined? a &&= 0

**URL:** <https://www.ruby-forum.com/t/defined-a-0/136604>\
**Category:** Development\
**Created:** [May 4, 2008, 10:06am UTC](https://www.ruby-forum.com/t/defined-a-0/136604 "2008-05-04T10:06:24Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Tanaka\_A](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/c67d28/32.png) [@Tanaka\_A](https://www.ruby-forum.com/u/Tanaka_A)\
**Post date:** [May 4, 2008, 10:06am UTC](https://www.ruby-forum.com/t/defined-a-0/136604/1 "2008-05-04T10:06:24Z")

</div>

e$B0J2\<$N$h$&$K!“e(Bdefined? a &&= 0 e$B$,e(B nil  
e$B$K$J$j$^$9$,!”$3$l$O0Ue(B  
e$B?^E\*$G$7$g$&$+e(B?

% ./ruby -ve ‘p(defined? a &&= 0)’  
ruby 1.9.0 (2008-05-02 revision 16284) [i686-linux]  
nil

1.8 e$B$G$Oe(B “expression” e$B$G$7$?!#e(B

% ruby-1.8 -ve ‘p(defined? a &&= 0)’  
ruby 1.8.7 (2008-05-02 patchlevel 5000) [i686-linux]  
“expression”

---

<div class="post-metadata">

**Author:** ![Tanaka\_A](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/c67d28/32.png) [@Tanaka\_A](https://www.ruby-forum.com/u/Tanaka_A)\
**Post date:** [May 11, 2008, 8:07am UTC](https://www.ruby-forum.com/t/defined-a-0/136604/2 "2008-05-11T08:07:05Z")

</div>

e$B%o%J%Y$H?=$7$^$9!#e(B

2008/05/04 17:05 Tanaka A. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):

> e$B0J2\<$N$h$&$K!“e(Bdefined? a &&= 0 e$B$,e(B nil e$B$K$J$j$^$9$,!”$3$l$O0Ue(B  
> e$B?^E\*$G$7$g$&$+e(B?

e$BNc30$,5/$-$J$$8B$je(B “expression”  
e$B$rJV$9$h$&$K$9$k%Q%C%A$r=q$-$^$7$?!#e(B  
catch e$B%F!\<%V%k$Ne(B sp e$B$N7W;;\>e!“L58z$Je(B branchif  
e$B$r$O$5$s$G$”$j$^$9!#e(B  
e$B@5$7$/$O$I$&=q$/$N$,$h$$$N$G$7$g$&$+!#e(B

e$B$H$3$m$Ge(B 1.8/1.9 e$B6&DL$NF0:n$G!“e(Ba e$B$,L$Dj5A$N$H$-$Ke(B  
defined?(a||=0) e$B$H$9$k$He(B  
a == 0 e$B$K$J$k$N$G$9$,!”$3$l$O@5$7$$F0:n$J$N$G$7$g$&$+!#e(B

# Index: compile.c

— compile.c (revision 16303)  
+++ compile.c (working copy)  
@@ -2499,7 +2499,9 @@  
if (!lfinish[1]) {  
lfinish[1] = NEW\_LABEL(nd\_line(node));  
}

- ADD\_INSNL(ret, nd\_line(node), branchunless, lfinish[1]);

- ADD\_INSN(ret, nd\_line(node), pop);
- ADD\_INSN(ret, nd\_line(node), putnil);
- ADD\_INSNL(ret, nd\_line(node), branchif, lfinish[1]);  
if (needstr) {  
ADD\_INSN1(ret, nd\_line(node), putstring,  
rb\_str\_new2(“expression”));  
}

---

<div class="post-metadata">

**Author:** ![Tanaka\_A](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/c67d28/32.png) [@Tanaka\_A](https://www.ruby-forum.com/u/Tanaka_A)\
**Post date:** [May 11, 2008, 8:57am UTC](https://www.ruby-forum.com/t/defined-a-0/136604/3 "2008-05-11T08:57:27Z")

</div>

e$B!!$5$5$@$G$9!%e(B

wanabe wrote:

> e$BNc30$,5/$-$J$$8B$je(B “expression” e$B$rJV$9$h$&$K$9$k%Q%C%A$r=q$-$^$7$?!#e(B

e$B!!$9$\_$^$;$s!$;d$,;EMM$r4\*0c$$$7$F$$$?$h$&$G$9!%$D$^$j!$\<0$NCM$,56e(B  
e$B$@$C$?\>l9g!$e(Bnil e$B$rJV$9$s$@$H;W$C$F$$$^$7$?!%e(B

> catch e$B%F!\<%V%k$Ne(B sp e$B$N7W;;\>e!“L58z$Je(B branchif e$B$r$O$5$s$G$”$j$^$9!#e(B  
> e$B@5$7$/$O$I$&=q$/$N$,$h$$$N$G$7$g$&$+!#e(B

e$B!!$3$N$"$?$j!$\>lEv$?$jE\*$Je(B sp  
e$B$N7W;;J}\<0$,$^$:$$$h$&$G$9!JD\>$C$F$J$$e(B  
e$B%P%0$Ne(B1e$B$D!K!%e(B

e$B!!e(Biseq e$B:n@.;~$K$O!$e(Barray e$B$8$c$J$/$Fe(B tree  
e$B$K$7$F!$e(Bsp e$B$r7W;;$9$k$7$+$Je(B  
e$B$$$+$H9M$($F$$$k$H$3$m$G$9!%$b$C$H$$$$J}K!$,$"$k$+$b$7$l$J$$$s$G$9$,!%e(B

e$B!!$H$j$"$($:!$$$$?$@$-$^$7$?%Q%C%A$rF~$l$F$$$?$@$/$N$,$$$$$N$G$O$J$$e(B  
e$B$+$H;W$$$^$9!%$7$+$7!$Nc30$r=P$9e(B test e$B$,L5$$$s$@$J!%e(B

> e$B$H$3$m$Ge(B 1.8/1.9 e$B6&DL$NF0:n$G!“e(Ba e$B$,L$Dj5A$N$H$-$Ke(B defined?(a||=0) e$B$H$9$k$He(B  
> a == 0 e$B$K$J$k$N$G$9$,!”$3$l$O@5$7$$F0:n$J$N$G$7$g$&$+!#e(B

e$B!!$3$3$O$I$&$J$s$G$7$g$&!%e(B

---

<div class="post-metadata">

**Author:** ![Tanaka\_A](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/c67d28/32.png) [@Tanaka\_A](https://www.ruby-forum.com/u/Tanaka_A)\
**Post date:** [May 12, 2008, 3:42am UTC](https://www.ruby-forum.com/t/defined-a-0/136604/4 "2008-05-12T03:42:33Z")

</div>

e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B

In message “Re: [ruby-dev:34645] Re: defined? a &&= 0”  
on Sun, 11 May 2008 15:06:11 +0900, wanabe [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
writes:

|e$B$H$3$m$Ge(B 1.8/1.9 e$B6&DL$NF0:n$G!“e(Ba e$B$,L$Dj5A$N$H$-$Ke(B defined?(a||=0) e$B$H$9$k$He(B  
|a == 0 e$B$K$J$k$N$G$9$,!”$3$l$O@5$7$$F0:n$J$N$G$7$g$&$+!#e(B

defined?e$B$KBeF~$,$“$k$H%m!\<%+%kJQ?t$rDj5A$9$Y$-$@$H$O;W$C$F$$e(B  
e$B$^$7$?$,!”\<B:]$KBeF~$9$Y$-$H$^$G$O;W$C$F$$$^$;$s$G$7$?!#$H$$e(B  
e$B$&$o$1$G%P%0$@$H;W$$$^$9!#e(B
