[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[dennou-ruby:000638] proto2c bug - variable.rb



���Ȥ��󤵤�

���ߤޤ��󡢤ޤ��Х�������ޤ�����
(���ˤ����Ť��Ǥ����顢�����ʤ�����)

����ؿ� f �� *.fp �� io ���ΰ��� ����Ĥ��������Ƥ����硢
Ruby ���� f ��Ƥ֤ȡ����ΰ������֥������Ȥ��ѹ������ˡ�����
�ʥ��֥������Ȥ�������������ͤˤ��뤫����ͤ�����˲ä��롣

�ΤϤ����ä��ΤǤ�����ʸ����ξ�硢���������֥������Ȥ��֤�
�Ĥġ����Υ��֥������Ȥ⹹������Ƥ��ޤ�����

���η��δؿ��ϡ�

math1_chrlib.fp  : cladj, cradj, crvrs
misc1_chnlib.fp  : chngc, chngi, chngr
misc1_datelib.fp : datec1, datec2, datec3
misc1_misclib.fp : cdblk
misc1_timelib.fp : timec1, timec2, timec3

�����Ǥ����ʤΤǡ�gokuraku, rakuraku, grph1, grph2 �Υǥ��
ư�������ˤϰ�����ꤢ��ޤ���Ǥ�����


������ǽ�������ư���ǧ���ޤ�������ȿ�Ǥ��륿���ߥ󥰤Ϥɤ�
���ޤ��礦�� ( variable.rb �Ǥ� )
�����ʬ���դ��ޤ��� commit ���Ƥ褱��ж����Ƥ���������
��˻�����Ȥ��ˤ��ߤޤ��󤬡�����������ꤤ���ޤ���


���� ����


--- variable.rb~	Sun Nov 19 14:15:00 2000
+++ variable.rb	Sat Nov 25 12:32:31 2000
@xxxxxx@xxxxxx -133,6 +133,12 @xxxxxx@xxxxxx
     %Q$#{c} = STR2CSTR(#{r});\n$
   end
 
+  def basic_r2c_copy(r, c)
+    type = self.vartype.gsub(/\s+\*$/, "")
+    %Q$#{c} = ALLOCA_N(#{type}, strlen(STR2CSTR(#{r}))+1);\n$ +
+    %Q$strcpy(#{c}, STR2CSTR(#{r}));\n$
+  end
+
   def basic_c2r(r, c)
     %Q$#{r} = rb_str_new2(#{c});\n$
   end
@xxxxxx@xxxxxx -211,7 +217,11 @xxxxxx@xxxxxx
   end
 
   def initialization
-    basic_r2c(name, prefix+name)
+    if self.input? && self.output?
+      basic_r2c_copy(name, prefix+name)
+    else
+      basic_r2c(name, prefix+name)
+    end
   end
 
   def allocworkingarea                  # kuro: +1 need ?