How do we define 'backwards compatibility' between SDL versions?

Incrementing minor versions within a major version are reported to be
’backwards compatible’ with code created using an older minor revision of
the major version, but how exactly do we define ‘backwards compatibility’?
With differing minor version numbers would functions gain or lose
arguments to themselves? Would the arguments change order? Would new
possible return values to functions be added that could be misinterpretted
by older code? Do structures change between minor versions? Will
functions be replaced by other functions in libraries?

Also, I am new to mailing lists. Am I using the mailing list correctly by
submitting submissions to this address (sdl at lists.libsdl.org)? Am I using
the correct mailing list for these questions? Should I conform to any
specific syntax with regards to these emails? Is it appropriate to use
smileys here (if so, I’ll throw a clarifying one out right now (follows):
:expressionless: )?

It means that programs made for older versions should be able to work
as-is with newer versions (assuming they don’t do something that could
be considered “undefined behavior”, of course). Changing function
arguments and such would effectively break old programs, so that isn’t
compatible at all.

I’m not sure how SDL handles the potential of new return values. That
said, most functions that return a value either return a pointer,
return whether it failed or not or return some ID that could be just
about any value, meaning there isn’t much room for that kind of
breaking changes.

2013/5/15, Charles Swain :> Incrementing minor versions within a major version are reported to be

‘backwards compatible’ with code created using an older minor revision of
the major version, but how exactly do we define ‘backwards compatibility’?
With differing minor version numbers would functions gain or lose
arguments to themselves? Would the arguments change order? Would new
possible return values to functions be added that could be misinterpretted
by older code? Do structures change between minor versions? Will
functions be replaced by other functions in libraries?

Also, I am new to mailing lists. Am I using the mailing list correctly by
submitting submissions to this address (sdl at lists.libsdl.org)? Am I using
the correct mailing list for these questions? Should I conform to any
specific syntax with regards to these emails? Is it appropriate to use
smileys here (if so, I’ll throw a clarifying one out right now (follows):
:expressionless: )?