After syck.h patched

#irb
irb(main):001:0> require 'syck'
=> true
irb(main):002:0> `uname -a`
=> "HP-UX aeaehn07 B.11.00 A 9000/785 2009896547 two-user license\n"


Thanks a lot Mr._why  




why the lucky stiff wrote:

>On Friday 15 August 2003 05:45 pm, Bermejo, Rodrigo \(GEAE, Foreign National\) 
>wrote:
>  
>
>>I am getting the following error when compiling ruby-1.8
>>compiling syck
>>
>>    
>>
>
>If you could please try the patch to syck.h below, I'd much appreciate.  I'd 
>ultimately like to get this extension working on your platform.  I know you 
>may not use Syck, but we at least want Ruby to work out of the bag for you.
>
>  
>
>>what if I dont want syck to be installed ?
>>
>>    
>>
>
>Just delete ext/syck/.
>
>_why
>
>--- /home/why/cvs/ruby/ruby/ext/syck/syck.h     Mon Jul 28 13:27:42 2003
>+++ lib/syck.h  Fri Aug 15 18:15:36 2003
>@@ -152,8 +156,28 @@
> };
> 
> /*
>  * Parser struct
>  */
>+struct _syck_file {
>+    /* File pointer */
>+    FILE *ptr;
>+    /* Function which FILE -> buffer */
>+    SyckIoFileRead read;
>+};
>+
>+struct _syck_str {
>+    /* String buffer pointers */
>+    char *beg, *ptr, *end;
>+    /* Function which string -> buffer */
>+    SyckIoStrRead read;
>+};
>+
>+struct _syck_level {
>+    int spaces;
>+    char *domain;
>+    enum syck_level_status status;
>+};
>+
> struct _syck_parser {
>     /* Root node */
>     SYMID root, root_on_error;
>@@ -180,25 +204,15 @@
>     /* EOF flag */
>     int eof;
>     union {
>-        struct _syck_file {
>-            FILE *ptr;
>-            SyckIoFileRead read;
>-        } *file;
>-        struct _syck_str {
>-            char *beg, *ptr, *end;
>-            SyckIoStrRead read;
>-        } *str;
>+        SyckIoFile *file;
>+        SyckIoStr *str;
>     } io;
>     /* Symbol table for anchors */
>     st_table *anchors, *bad_anchors;
>     /* Optional symbol table for SYMIDs */
>     st_table *syms;
>     /* Levels of indentation */
>-    struct _syck_level {
>-        int spaces;
>-        char *domain;
>-        enum syck_level_status status;
>-    } *levels;
>+    SyckLevel *levels;
>     int lvl_idx;
>     int lvl_capa;
>     void *bonus;
>
>  
>