- partial merge from sativa branch
* log:branches/sativa@13263:13263
0 lines of code changed in 1 file:
- partial merge from sativa branch
* log:branches/sativa@13241:13241
370 lines of code changed in 14 files:
* +lib/sativa, -bin/sativa
- source-tarball-generation
- svn-ignores
1 lines of code changed in 1 file:
- partial merge from sativa branch
* log:branches/sativa@13202:13202
0 lines of code changed in 8 files:
- delete sub-mergeinfo accidentally introduced with [13191]
0 lines of code changed in 2 files:
* reintegrates 'slv' into 'trunk'
* performs #624
* adds:
- log:branches/slv@13152:13190
1010 lines of code changed in 22 files:
* accidently activated location checks with gcc>=4.8 for others with [13019]
7 lines of code changed in 1 file:
- fix clang compilation (broken by [13134])
3 lines of code changed in 1 file:
- disable {{{-Wmaybe-uninitialized}}} in DEBUG mode (too many bogus warnings that do NOT appear in NDEBUG)
4 lines of code changed in 1 file:
- fix warnings reported by NDEBUG compilation
16 lines of code changed in 11 files:
- enable warnings in NDEBUG and RELEASE
6 lines of code changed in 1 file:
* fix undefined behavior in loops over enum values
- only checked for-loops, other manual loops still might exist
- NDEBUG compilation with some gcc versions (e.g. 4.3.3, 4.4.3) optimize out the loop condition:
* in case of the loop added in [13129] the condition {{{at<=MY_AA}}} is regarded as "always true", because standard defines the variable {{{at}}} '''may not''' contain any value greater than MY_AA
* newer gccs do no longer perform such rigid optimizations
* the "bug" is described [https://gcc.gnu.org/bugzilla/show_bug.cgi?id=42810 here]
- as you can see the test {{{TEST_EXPECT(at>=1 && at<=3);}}} is optimized out as well
- this patch shows two different ways to remove undefined behavior:
* add another value (greater than tested loop condition) to enum (done in GEN_graphic.cxx). may easily be broken by removing that (unused) value later .
* use int as loop-variable, then assign to enum variable
11 lines of code changed in 4 files:
- check some undefined behavior
19 lines of code changed in 1 file: