1

I just upgraded from chapel 1.23 to 1.24. Now the compiler screams at me;

warning: implicitly reading from a sync is deprecated; apply a '.read??()' method

For example. the code block below lists this warning at the last line.

var allStatesLock$: sync bool;
allStatesLock$.writeXF(true);                
allStatesLock$;
  

.read??() does not seam to be a method in chapel 1.24.

ahysing
  • 11
  • 1

1 Answers1

1

@ahysing: Sorry for the confusion caused by this error message. As @Noah correctly mentions in the comments, the ?? here is meant to be a placeholder for various options like FE, FF, or XX.

In Chapel 1.24.0, implicit accesses to synchronization variables were deprecated for reasons documented in the Chapel 1.23.0 release notes (starting on slide 6 of the Ongoing Efforts deck). Replacing implicit reads with .readFE() and implicit writes with .writeEF(val) should keep your code working without warnings.

Brad
  • 3,839
  • 7
  • 25