Changeset b9f383f for src/tests/concurrent/examples
- Timestamp:
- Apr 27, 2018, 2:35:00 PM (5 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, deferred_resn, demangler, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, with_gc
- Children:
- 5527759
- Parents:
- de6319f
- Location:
- src/tests/concurrent/examples
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
src/tests/concurrent/examples/.expect/boundedBufferEXT.txt
rde6319f rb9f383f 1 concurrent/examples/boundedBufferEXT.c:39:1 error: No alternatives for function in call to waitfor 2 /u/pabuhr/software/cfa-cc/include/cfa/bits/containers.h:170:1 error: candidate function not viable: no mutex parameters 3 forall 4 _6573_20_T: sized object type 5 ... with assertions 6 get_next: pointer to function 7 ... with parameters 8 reference to instance of type _6573_20_T (not function type) 9 ... returning 10 _retval_get_next: reference to pointer to instance of type _6573_20_T (not function type) 11 ... with attributes: 12 Attribute with name: unused 13 14 15 16 lvalue function 17 ... with parameters 18 this: reference to instance of struct __queue with body 1 19 ... with parameters 20 instance of type _6573_20_T (not function type) 21 22 it: pointer to pointer to instance of type _6573_20_T (not function type) 23 ... returning 24 _retval_remove: pointer to instance of type _6573_20_T (not function type) 25 ... with attributes: 26 Attribute with name: unused 27 28 29 /usr/include/stdio.h:178:1 error: candidate function not viable: no mutex parameters 30 lvalue function 31 ... with parameters 32 __filename: C pointer to const char 33 ... returning 34 _retval_remove: signed int 35 ... with attributes: 36 Attribute with name: unused 37 38 39 concurrent/examples/boundedBufferEXT.c:47:1 error: No alternatives for function in call to waitfor 40 concurrent/examples/boundedBufferEXT.c:37:1 error: candidate function not viable: too few mutex arguments 41 forall 42 _6578_20_T: sized object type 43 ... with assertions 44 ?=?: pointer to function 45 ... with parameters 46 reference to instance of type _6578_20_T (not function type) 47 instance of type _6578_20_T (not function type) 48 ... returning 49 _retval__operator_assign: instance of type _6578_20_T (not function type) 50 ... with attributes: 51 Attribute with name: unused 52 53 54 ?{}: pointer to function 55 ... with parameters 56 reference to instance of type _6578_20_T (not function type) 57 ... returning nothing 58 59 ?{}: pointer to function 60 ... with parameters 61 reference to instance of type _6578_20_T (not function type) 62 instance of type _6578_20_T (not function type) 63 ... returning nothing 64 65 ^?{}: pointer to function 66 ... with parameters 67 reference to instance of type _6578_20_T (not function type) 68 ... returning nothing 69 70 71 lvalue function 72 ... with parameters 73 buffer: mutex reference to instance of struct Buffer with body 1 74 ... with parameters 75 instance of type _6578_20_T (not function type) 76 77 elem: instance of type _6578_20_T (not function type) 78 ... returning nothing 79 1 total:400000 -
src/tests/concurrent/examples/boundedBufferEXT.c
rde6319f rb9f383f 1 // 1 // 2 2 // The contents of this file are covered under the licence agreement in the 3 3 // file "LICENCE" distributed with Cforall. 4 // 5 // boundedBufferEXT.c -- 6 // 4 // 5 // boundedBufferEXT.c -- 6 // 7 7 // Author : Peter A. Buhr 8 8 // Created On : Wed Apr 18 22:52:12 2018 … … 10 10 // Last Modified On : Fri Apr 20 22:25:14 2018 11 11 // Update Count : 6 12 // 12 // 13 13 14 14 #include <stdlib> // random … … 39 39 forall( otype T ) 40 40 void insert( Buffer(T) & mutex buffer, T elem ) with( buffer ) { 41 if ( count == BufferSize ) waitfor( remove );41 if ( count == BufferSize ) waitfor( remove, buffer ); 42 42 elements[back] = elem; 43 43 back = ( back + 1 ) % BufferSize; … … 47 47 forall( otype T ) 48 48 T remove( Buffer(T) & mutex buffer ) with( buffer ) { 49 if ( count == 0 ) waitfor( insert );49 if ( count == 0 ) waitfor( insert, buffer ); 50 50 T elem = elements[front]; 51 51 front = ( front + 1 ) % BufferSize;
Note: See TracChangeset
for help on using the changeset viewer.