Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

src/datrie.c pointer-type warnings vs datrie/alpha-map.h #57

Open
dmacks opened this issue Oct 30, 2018 · 0 comments
Open

src/datrie.c pointer-type warnings vs datrie/alpha-map.h #57

dmacks opened this issue Oct 30, 2018 · 0 comments

Comments

@dmacks
Copy link

dmacks commented Oct 30, 2018

Building datrie-0.7.1 for python2.7 on OS X 10.13 using Debian's patch for external libdatrie-0.2.12 I get some compiler warnings.

gcc -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -fwrapv -O3 -Wall -Wstrict-prototypes -I/sw/include -I/sw/include/python2.7 -c src/datrie.c -o build/temp.macosx-10.13-x86_64-2.7/src/datrie.o
src/datrie.c:2821:36: warning: incompatible pointer types passing
      'struct AlphaMap *' to parameter of type 'const AlphaMap *' (aka 'const
      struct _AlphaMap *') [-Wincompatible-pointer-types]
  __pyx_v_self->_c_trie = trie_new(__pyx_v_alpha_map->_c_alpha_map);
                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/sw/include/datrie/trie.h:120:35: note: passing argument to parameter
      'alpha_map' here
Trie *  trie_new (const AlphaMap *alpha_map);
                                  ^
src/datrie.c:3399:30: warning: incompatible pointer types passing
      'struct AlphaMap *' to parameter of type 'const AlphaMap *' (aka 'const
      struct _AlphaMap *') [-Wincompatible-pointer-types]
  __pyx_v__c_trie = trie_new(__pyx_v_alpha_map->_c_alpha_map);
                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/sw/include/datrie/trie.h:120:35: note: passing argument to parameter
      'alpha_map' here
Trie *  trie_new (const AlphaMap *alpha_map);
                                  ^
src/datrie.c:19997:30: warning: incompatible pointer types assigning to
      'struct AlphaMap *' from 'AlphaMap *' (aka 'struct _AlphaMap *')
      [-Wincompatible-pointer-types]
  __pyx_v_self->_c_alpha_map = alpha_map_new();
                             ^ ~~~~~~~~~~~~~~~
src/datrie.c:20054:20: warning: incompatible pointer types passing
      'struct AlphaMap *' to parameter of type 'AlphaMap *' (aka
      'struct _AlphaMap *') [-Wincompatible-pointer-types]
    alpha_map_free(__pyx_v_self->_c_alpha_map);
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
/sw/include/datrie/alpha-map.h:72:39: note: passing argument to parameter
      'alpha_map' here
void        alpha_map_free (AlphaMap *alpha_map);
                                      ^
src/datrie.c:20445:49: warning: incompatible pointer types passing
      'struct AlphaMap *' to parameter of type 'const AlphaMap *' (aka 'const
      struct _AlphaMap *') [-Wincompatible-pointer-types]
  __pyx_v_clone->_c_alpha_map = alpha_map_clone(__pyx_v_self->_c_alpha_map);
                                                ^~~~~~~~~~~~~~~~~~~~~~~~~~
/sw/include/datrie/alpha-map.h:70:46: note: passing argument to parameter
      'a_map' here
AlphaMap *  alpha_map_clone (const AlphaMap *a_map);
                                             ^
src/datrie.c:20445:31: warning: incompatible pointer types assigning to
      'struct AlphaMap *' from 'AlphaMap *' (aka 'struct _AlphaMap *')
      [-Wincompatible-pointer-types]
  __pyx_v_clone->_c_alpha_map = alpha_map_clone(__pyx_v_self->_c_alpha_map);
                              ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/datrie.c:20987:38: warning: incompatible pointer types passing
      'struct AlphaMap *' to parameter of type 'AlphaMap *' (aka
      'struct _AlphaMap *') [-Wincompatible-pointer-types]
  __pyx_v_code = alpha_map_add_range(__pyx_v_self->_c_alpha_map, __pyx_v...
                                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
/sw/include/datrie/alpha-map.h:74:45: note: passing argument to parameter
      'alpha_map' here
int         alpha_map_add_range (AlphaMap  *alpha_map,
                                            ^
7 warnings generated.

I see no relevant differences between the lib's public headers installed on my system and the same files in datrie's copy of it. Sorry, I don't know a thing about python glue code to begin to solve this myself. But if there's anything specific you'd like me to try, let me know.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant