I believe I may have tracked down the cause of the problem. Revision 5455 (16 Feb 2011, committed by pabigot) made changes to tinyos-2.x/tos/chips/msp430/pins/HplMsp430GeneralIOC.nc.(among other files). These changes add support for MSP430 pin resistors, as well as mspgcc4.
Specifically, line 344 includes component PlatformC, with the comment "dummy to end unknown sequence". This is done because previous components are conditionally included based on pre-processor directives. Components are separated with a comma (,), however the last component needs to be terminated with a semicolon (;). As it is difficult to determine which will be the last included component, the "dummy" component PlatformC is included at the end, so the list of included components is always terminated with a semicolon. For some reason, including PlatformC in HplMsp430GeneralIOC causes the compilation error in the previous email (below). I do not know exactly why - my knowledge of TinyOS or TosThreads does not go that far. I have attached a patch that, instead of attempting to list all components at once and guessing the end of the list, contains the "components" keyword and terminates the components list within EACH pre-processor condition. This avoids having to have a "dummy" component to complete the components list, and now compiles fine when using TosThreads. If this patch is OK, can somebody please commit. Also, if anybody has any ideas as to why including PlatformC breaks TosThreads, I am interested - particularly if this is an indication of an uncovered bug. David ________________________________ From: David Rodda Sent: Monday, 27 June 2011 2:00 PM To: tinyos-help@millennium.berkeley.edu Subject: [Tinyos-help] TosThreads compilation error I am getting an error when compiling any TinyOS application that uses TosThreads. When compiling the "blink" application in the TosThreads apps directory I get the following error: ===================================================================== make telosb threads /tinyos-2.x/tos/lib/tosthreads/system/TinyThreadSchedulerP.nc:191: warning: call via function pointer /tinyos-2.x/tos/lib/tosthreads/system/SystemCallP.nc:49: warning: call via function pointer In component `HilTimerMilliC.AlarmToTimerC': /tinyos-2.x/tos/lib/timer/AlarmToTimerC.nc: In function `Alarm.fired': /tinyos-2.x/tos/lib/timer/AlarmToTimerC.nc(HilTimerMilliC.AlarmToTimerC):82: fired.postTask not connected In component `SystemCallP': /tinyos-2.x/tos/lib/tosthreads/system/SystemCallP.nc: In function `SystemCall.start': /tinyos-2.x/tos/lib/tosthreads/system/SystemCallP.nc:74: threadTask.postTask not connected In component `ThreadTimersC.VirtualizeTimerC': /tinyos-2.x/tos/lib/timer/VirtualizeTimerC.nc: In function `startTimer': /tinyos-2.x/tos/lib/timer/VirtualizeTimerC.nc(ThreadTimersC.VirtualizeTimerC):151: updateFromTimer.postTask not connected In component `HilTimerMilliC.VirtualizeTimerC': /tinyos-2.x/tos/lib/timer/VirtualizeTimerC.nc: In function `startTimer': /tinyos-2.x/tos/lib/timer/VirtualizeTimerC.nc(HilTimerMilliC.VirtualizeTimerC):151: updateFromTimer.postTask not connected make: *** [exe0] Error 1 ===================================================================== This happens regardless of the application I compile or the platform I target. This setup was working when I last tried to compile, earlier on this year, but I have since updated the TinyOS. Using TinyOS 2.x from SVN, on windows under Cygwyn. It appears I am not the only one having this issue - this post on nabble in early June raises the same issue. http://old.nabble.com/Problem-compiling-tosthreads-demo-code-tt31744254.html#a31744254 Has anybody else experienced this issue? Any help appreciated. David ________________________________ The information in this e-mail may be confidential and subject to legal professional privilege and/or copyright. National ICT Australia Limited accepts no liability for any damage caused by this email or its attachments.
HplMsp430InterruptC.nc.patch
Description: HplMsp430InterruptC.nc.patch
_______________________________________________ Tinyos-help mailing list Tinyos-help@millennium.berkeley.edu https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help