[New-bugs-announce] [issue6414] struct module : processor endianness descriptions misleading

Karl Magdsick report at bugs.python.org
Sat Jul 4 09:46:30 CEST 2009

New submission from Karl Magdsick <kmagdsick at hotmail.com>:

In http://docs.python.org/dev/library/struct.html,

it says
"Native byte order is big-endian or little-endian, depending on the host 
system. For example, Motorola and Sun processors are big-endian; Intel 
and DEC processors are little-endian."

This is a gross over-generalization at best.  Off the top of my head, 
current Linux kernels run the Intel Itanium in big-endian mode. (Though, 
I don't recall if there's a non-privileged instruction to flip 
endianness, system headers and system calls are defined in big-endian 
order, which is what's most relevant to the struct module.)  Sun SPARC 
v9 is bi-endian. Intel Itanium and XScale processors are bi-endian.  Dec 
Alphas are bi-endian.  (Though, I'm only aware of Cray using Alphas in 
big-endian mode.)

The quoted paragraph should name specific processors which are single-
endian (Intel Core 2, Sun SPARC v8) and/or provide a Wikipedia 
reference, rather than making incorrect statements.

Intel Itanium machines running Linux are probably the most common 
systems where this statement's inaccuracy is likely to cause confusion 
among developers.

assignee: georg.brandl
components: Documentation
messages: 90107
nosy: georg.brandl, kmag
severity: normal
status: open
title: struct module : processor endianness descriptions misleading
versions: Python 2.4, Python 2.5, Python 2.6, Python 2.7, Python 3.0, Python 3.1

Python tracker <report at bugs.python.org>

More information about the New-bugs-announce mailing list