You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.
Show more details
GitHub fields:
assignee='https://github.com/pitrou'closed_at=<Date2010-09-01.13:03:11.110>created_at=<Date2008-06-13.07:30:19.652>labels= []
title='global function _add_one_to_index_C'updated_at=<Date2010-09-01.13:03:11.107>user='https://github.com/loewis'
abstract.c defines two functions _add_one_to_C and _add_one_to_F. These
apparently must be global, as memoryobject.c references them. Therefore,
they should get a Py or _Py prefix.
A short comment for what these functions actually do would also be
appreciated.
Ok, so it's fixed for the trunk, but not Py3k. The trunk fix doesn't
port to 3k, since the functions are called inside memoryobject.c (so
making them static would break that module).
A sensible solution would be to put all the memoryview / buffer API
stuff in the same standalone file (e.g. memoryobject.c), rather than
having half of it dumped in abstract.c.
teoliphant commented on Aug 24, 2008
teoliphantmannequin
Mannequin
More actions
I've added comments in the code to document these functions. I have no
opinion where they live except they should probably be available to
extensions modules.
These routines increment an N-length counter representing a position in
an N-dimensional array with wrap-around when the counter reaches the
size of the dimension. Thus, for a (2,3) array we have:
changed the title [-]global function _add_one_to_C[/-][+]global function _add_one_to_index_C[/+]on Dec 8, 2008
loewis commented on Dec 8, 2008
loewismannequin
MannequinAuthor
More actions
I think _add_one_to_index_C and _add_one_to_index_F should be renamed.
If they are meant to be called by non-core extension modules, their
names should start with Py_, else with _Py_.
I think they currently are private functions which happen to be used
accross two different C source files. So they should be renamed
_Py_something (or the situation should be fixed so that they can be made
static).
loewis commented on Dec 8, 2008
loewismannequin
MannequinAuthor
More actions
I think they currently are private functions which happen to be used
accross two different C source files.
I've added a "_Py" prefix in r84391, and also made the shape argument const. If numpy people want this to be an official public API, they'll have to contribute. Thanks.
Activity
loewis commentedon Jun 13, 2008
abstract.c defines two functions _add_one_to_C and _add_one_to_F. These
apparently must be global, as memoryobject.c references them. Therefore,
they should get a Py or _Py prefix.
A short comment for what these functions actually do would also be
appreciated.
riq commentedon Jun 21, 2008
This seems to be fixed in r62348
http://svn.python.org/view?rev=62348&view=rev
loewis commentedon Jun 21, 2008
Ok, so it's fixed for the trunk, but not Py3k. The trunk fix doesn't
port to 3k, since the functions are called inside memoryobject.c (so
making them static would break that module).
pitrou commentedon Aug 22, 2008
A sensible solution would be to put all the memoryview / buffer API
stuff in the same standalone file (e.g. memoryobject.c), rather than
having half of it dumped in abstract.c.
teoliphant commentedon Aug 24, 2008
I've added comments in the code to document these functions. I have no
opinion where they live except they should probably be available to
extensions modules.
These routines increment an N-length counter representing a position in
an N-dimensional array with wrap-around when the counter reaches the
size of the dimension. Thus, for a (2,3) array we have:
F-version
0,0
1,0
2,0
0,1
1,1
2,1
C-version
0,0
0,1
0,2
1,0
1,1
1,2
[-]global function _add_one_to_C[/-][+]global function _add_one_to_index_C[/+]loewis commentedon Dec 8, 2008
I think _add_one_to_index_C and _add_one_to_index_F should be renamed.
If they are meant to be called by non-core extension modules, their
names should start with Py_, else with _Py_.
pitrou commentedon Dec 8, 2008
I think they currently are private functions which happen to be used
accross two different C source files. So they should be renamed
_Py_something (or the situation should be fixed so that they can be made
static).
loewis commentedon Dec 8, 2008
But see msg71879
pitrou commentedon Dec 8, 2008
Well, then a proper API should be devised. Perhaps Travis can shed more
light on what he thinks would be useful.
birkenfeld commentedon Aug 22, 2010
Functions are still present and non-static in trunk.
pitrou commentedon Sep 1, 2010
I've added a "_Py" prefix in r84391, and also made the
shapeargument const. If numpy people want this to be an official public API, they'll have to contribute. Thanks.