http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57813

--- Comment #5 from Daniel Oertwig <daniel.oertwig at gmail dot com> ---
(In reply to Andrew Pinski from comment #3)
>       taskInfo.ready[priority]->wakeTime = Task_enforceTimeslice(priority);
> 
> This is the same as:
>       (*taskInfo.ready[priority]).wakeTime = Task_enforceTimeslice(priority);
> 
> Which means either the compiler can read the value of
> taskInfo.ready[priority] before or after the function call to
> Task_enforceTimeslice because there is no sequence point between them.

Shouldn't the compiler recognize that enforceTimeslice is altering the global
variable?

Reply via email to