I listed the contents of the stm8-large .lib file (with sdar -t), and indeed there are two entries for strcmp and strcpy.
I figured out what was wrong. When the library is built, when it invokes sdar to make the .lib file, it only tells it to *add/replace* files. So that meant the old strcmp/strcpy routines were still in it from a previous build, because they have slightly differing filenames between the C and assembly implementations (one with underscore prefix, one without).
When I deleted the .lib file and ran make again, all was right, because sdar had to recreate the file.
What was puzzling was that even doing a "make clean" didn't solve the problem, because for some reason that doesn't delete the end-product of the build, the .lib file, like one might expect it to.
Running the regression tests again now, so far without warnings... Regards, Basil Hussain _______________________________________________ Sdcc-user mailing list Sdcc-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/sdcc-user