Re: cxx-mem-model merge [4 of 9] c-family

2011-11-04 Thread Andrew MacLeod
On 11/04/2011 02:32 PM, Jeff Law wrote: Here's the updated c-family file (with an updated changelog as well). I added a warning to common.c and updated builtins.c::get_memmodel where the same error was issued. That is changed to a warning as well. I also added an entry in the testsuite to ch

Re: cxx-mem-model merge [4 of 9] c-family

2011-11-04 Thread Jeff Law
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 11/04/11 07:58, Andrew MacLeod wrote: > On 11/04/2011 08:51 AM, Joseph S. Myers wrote: >> >> DR#109 applies: "A conforming implementation must not fail to >> translate a strictly conforming program simply because some >> possible execution of that

Re: cxx-mem-model merge [4 of 9] c-family

2011-11-04 Thread Andrew MacLeod
On 11/04/2011 08:51 AM, Joseph S. Myers wrote: DR#109 applies: "A conforming implementation must not fail to translate a strictly conforming program simply because some possible execution of that program would result in undefined behavior.". The value of a function parameter (that has the right

Re: cxx-mem-model merge [4 of 9] c-family

2011-11-04 Thread Joseph S. Myers
On Fri, 4 Nov 2011, Andrew MacLeod wrote: > > Given that C and C++ allow variable arguments to the standard type-generic > > macros/functions, it is also presumably OK - only undefined at runtime - > > for a constant memory model argument of the correct type to have a value > > representable in th

Re: cxx-mem-model merge [4 of 9] c-family

2011-11-04 Thread Andrew MacLeod
On 11/03/2011 08:20 PM, Joseph S. Myers wrote: On Thu, 3 Nov 2011, Andrew MacLeod wrote: + if (VEC_length (tree, params) != n_param) + { + error ("Incorrect number of arguments to function %qE", function); Diagnostics start with lowercase letters. The functions such as "error" tha

Re: cxx-mem-model merge [4 of 9] c-family

2011-11-03 Thread Joseph S. Myers
On Thu, 3 Nov 2011, Andrew MacLeod wrote: > + if (VEC_length (tree, params) != n_param) > + { > + error ("Incorrect number of arguments to function %qE", function); Diagnostics start with lowercase letters. The functions such as "error" that implicitly use input_location are depreca

cxx-mem-model merge [4 of 9] c-family

2011-11-03 Thread Andrew MacLeod
These changes are primarily recognition of all __atomic builtins plus the expansion of the generic versions of the atomics. If a generic function call uses an object which is compatible with a lock free integral size, then the call is translated into one of those. This provides lock free suppo