> > + gpiod_set_raw_value(desc, !!((1 << i) & *value)); > > What is this? How can the expression !!((1 << i) possibly evaluate to > anything else than "true"? I don't get it. Just (desc, *value) seem more > apropriate. The expression is !!((1 << i) & *value) so its the standard C sematic for 'logical and' ? 1 : 0 --------------------------------------------------------------------- Intel Corporation (UK) Limited Registered No. 1134945 (England) Registered Office: Pipers Way, Swindon SN3 1RJ VAT No: 860 2173 47 This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies. ��.n��������+%������w��{.n�����{�����ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f