This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: Compile error with pytime.h - struct timespec declared inside parameter list
Type: compile error Stage: resolved
Components: Build Versions: Python 3.5
process
Status: closed Resolution: works for me
Dependencies: Superseder:
Assigned To: Nosy List: iritkatriel, jamespharvey20, martin.panter
Priority: normal Keywords:

Created on 2015-12-12 23:09 by jamespharvey20, last changed 2022-04-11 14:58 by admin. This issue is now closed.

Messages (4)
msg256301 - (view) Author: jamespharvey20 (jamespharvey20) Date: 2015-12-12 23:09
When including pytime.h:

n file included from /usr/include/python3.5m/Python.h:65:0,
                 from src/package.c:25:
/usr/include/python3.5m/pytime.h:136:56: error: ‘struct timespec’ declared inside parameter list [-Werror]
 PyAPI_FUNC(int) _PyTime_AsTimespec(_PyTime_t t, struct timespec *ts);
                                                        ^
/usr/include/python3.5m/pytime.h:136:56: error: its scope is only this definition or declaration, which is probably not what you want [-Werror]
cc1: all warnings being treated as errors
error: command 'gcc' failed with exit status 1
msg256303 - (view) Author: jamespharvey20 (jamespharvey20) Date: 2015-12-12 23:25
This is using https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tar.xz

GCC v5.3.0

Using Werror obviously
msg256378 - (view) Author: Martin Panter (martin.panter) * (Python committer) Date: 2015-12-14 12:01
What platform, C library, etc do you have? According to Posix, struct timespec is normally defined in <time.h>, but can also be gotten via various other include files, many of which are included before "pytime.h".

In particular, <Python.h> includes "pyport.h", which has conditional code for including <time.h>, <sys/select.h> and <sys/stat.h>. All of these should define timespec. It might be useful to check your pyconfig.h file to see if stuff like the following is defined:

/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
#define TIME_WITH_SYS_TIME 1
msg401662 - (view) Author: Irit Katriel (iritkatriel) * (Python committer) Date: 2021-09-12 11:25
Closing as there isn't enough information here for us to do anything about it and there has been no response from the OP to follow-up questions.
History
Date User Action Args
2022-04-11 14:58:24adminsetgithub: 70040
2021-09-12 11:25:56iritkatrielsetstatus: open -> closed

nosy: + iritkatriel
messages: + msg401662

resolution: works for me
stage: resolved
2015-12-14 12:01:08martin.pantersetnosy: + martin.panter
messages: + msg256378
components: + Build, - Library (Lib)
2015-12-12 23:25:53jamespharvey20setmessages: + msg256303
2015-12-12 23:09:50jamespharvey20create