Skip to content

Different build systems generate different macros HAVE_BROKEN_NICE #99915

Closed as not planned
@zhuofeng6

Description

@zhuofeng6

Bug report

Compile python3.9 on machine A, and Compile python3.9 on another machine B.

checking for broken nice() is different.

checking for broken nice()... yes
checking for broken nice()... no

it is makes that macros HAVE_BROKEN_NICE in the file pyconfig.h.in is different

/* Define if nice() returns success/failure instead of the new priority. */
/* #undef HAVE_BROKEN_NICE */

/* Define if nice() returns success/failure instead of the new priority. */
#define HAVE_BROKEN_NICE 1

it make macros HAVE_BROKEN_NICE 1 if function main return 0

#include <stdlib.h>
#include <unistd.h>
int main()
{
	int val1 = nice(1);
	if (val1 != -1 && val1 == nice(2))
		exit(0);
	exit(1);
}

Shouldn't the result be the same during compilation and build? all return 0 or all return 1

Your environment

  • CPython versions tested on:python3.9.9
  • Operating system and architecture:openeruler22.03, x86

Metadata

Metadata

Assignees

No one assigned

    Labels

    type-bugAn unexpected behavior, bug, or error

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions