[PD-dev] [ pure-data-Patches-1867738 ] [FIX] gensym() should use \"const char*\"

SourceForge.net noreply at sourceforge.net
Wed Jan 16 15:45:36 CET 2008


Patches item #1867738, was opened at 2008-01-09 16:25
Message generated for change (Settings changed) made by zmoelnig
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=478072&aid=1867738&group_id=55736

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: puredata
Group: bugfix
>Status: Pending
Resolution: None
Priority: 5
Private: No
Submitted By: IOhannes m zmölnig (zmoelnig)
Assigned to: Miller Puckette (millerpuckette)
>Summary: [FIX] gensym() should use \"const char*\"

Initial Comment:
gensym is currently defined as "t_symbol *gensym(char *s);"

this leads to numerous warnings when compiling C++-externals, since C++ treats literals (strings) as "const char*".

e.g.
gensym("hello");
yields and a warning "warning: deprecated conversion from string constant to 'char*'"

the fix for this is simple and makes total sense, since gensym() does not need to modify the passed string. just use:
t_symbol *gensym(const char *s);


the attached patch does this (it additionally applies the same to the dogensym() function in m_class.c

----------------------------------------------------------------------

Comment By: Miller Puckette (millerpuckette)
Date: 2008-01-14 19:38

Message:
Logged In: YES 
user_id=313747
Originator: NO

taken.


----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=478072&aid=1867738&group_id=55736




More information about the Pd-dev mailing list