Why can't I regress to an older version of my project?


hi, related post on forum http://forum.arduino.cc/index.php?topic=169759.0

here's edited, highlights....
my project has been growing on months, (both in functionality , size), on last couple of weeks it's expanded point compiles on 128 kbytes on mega 2560 (not sure if relevant)

during period noticed started occasional bug, code compile , upload normal without error. when run seemingly random string of 100 numerals , nothing further. (exactly same string every time -see above post details)

initially took occasional glitch, , discovered around compiling , uploading unrelated sketch onto board instead, , re-compiling , loading project (sometimes have repeat process several times work). occasional error, time progressed (and project got bigger) problem occurring more frequently, , work-around having run more times project work.

i've made few more changes code, , seem have reached point error occurs, , work-around never works!

ok, annoying bit. every time i've built project i've backed libraries (all .cpp , .h files) , getting working again ought matter of restoring last working set of files , re-compiling. however, reasons baffle me, i've had go 14 versions (nearly 3 weeks ago) find version work.

so, ignoring actual problem project, question - why won't code worked yesterday work today????

so far research has suggested problem may down in memory compiler chooses put objects (in particular progmem strings) - (does sound plausible? please comment) i've learnt compiler won't put same object in same location (does know why? thought computer working on same data should same thing every time)

bearing in mind, current conclusion last few weeks compiler has (through chance only) being putting objects in right place, , has started putting objects in wrong place (again through luck only). sound plausible? i'll admit i'm guessing.

the following facts may relevant...
i'm compiling mega 2560 using version 1.0
there no compilation errors - run-time problems.
all individual libraries compile , run without problems. problem when build whole project , sketch compiles around 128k
there's not been 1 big change (i haven't added new libraries) i've been adding few lines every day on last few weeks.
the project includes 800 progmem constants totaling 28k.
i same error on 3 different mega 2560s
i've tried loading progmem constants higher memory using ''__attribute__((section(".fini7")))" instead of "progmem" made no difference.

all comments appreciated!

rebuilding same set of source files same ide should produce same executable image. if behaviour of changing, wonder whether due external influence. without idea of hardware or software involved have no idea possible influences there might be, things psus running hotter in warm weather, rtc or gps generating different date-related data, fact you're working @ different time of day, sort of thing. remember many years ago trying track down stability problem in large application - after immense amount of guesswork , head scratching , frustration - realized reproduced when scenario happened on specific day of year. simple problem longest time didn't consider 1 critical factor needed reproduce it. if behaviour you're seeing defies reason suggests there's factor influencing hasn't been considered yet.


Arduino Forum > Using Arduino > Programming Questions > Why can't I regress to an older version of my project?


arduino

Comments

Popular posts from this blog

Convierte tu Raspberry en un NAS. Firmware fvdw-sl 15.3 - Raspberry Pi Forums

Rasperry Wifi LAN Controller - Raspberry Pi Forums

Unlock car with bluetooth and car key