GNOME Bugzilla – Bug 723869
GRAFCET shapes include an 'isspecial()' that conflicts with Darwin's ctype.h
Last modified: 2019-03-20 12:00:09 UTC
Created attachment 268442 [details] Only the relevant build output ('Making all in GRAFCET') The relevant Darwin/OS X source file is: http://www.opensource.apple.com/source/Libc/Libc-262/include/ctype.h Renaming 'isspecial' in GRAFCET's boolequation.c corrects the problem, and I've attached a hopefully well-formed patch file against <src>/objects/GRAFCET/boolequation.c that should fix the problem. This may be the second patch I've ever submitted (to any FLOSS project, ever), so please do pardon if in simply renaming a conflicting function with a prefix (I chose 'gb_' for the 'gboolean' return type of this function), I've committed some breach of protocol.
Created attachment 268443 [details] [review] Proposed patch renaming 'isspecial' to 'gb_isspecial'
The declaration is protected by #if !defined(_ANSI_SOURCE) && !defined(_POSIX_SOURCE) so rather than modifying Dia's source for the namespace pollution it should be checked why it works for me, but not for you. I wonder if this due to a newer or older system. Could you give the output of gcc --version?
The build flags were recently changed (e.g. no more --std=c89). Still no clue what build environment difference could cause the issue.
-- GitLab Migration Automatic Message -- This bug has been migrated to GNOME's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/dia/issues/335.