On Wed, May 12, 2021 at 2:18 PM Ida Delphine <idad...@gmail.com> wrote:
>
> Hello everyone,
> Still waiting for some feedback :)
>
> Cheers,
> Ida.
>
> On Mon, 10 May 2021, 5:59 am Ida Delphine, <idad...@gmail.com> wrote:
>>
>> Hello everyone,
>> Went through some previous emails and it turns out Sebastian already came up 
>> with a configuration for clang format which works well for RTEMS except for 
>> the fact that some configurations haven't been implemented into clang-format 
>> yet. Using
>>
>> AlignConsecutiveDeclarations: false
>> PointerAlignment: Right
>>
>> Doesn't seem to work.
>> For example in the cpukit/score/src/threadq.c file, something like
>>
>> RTEMS_STATIC_ASSERT(
>> offsetof( Thread_queue_Syslock_queue, Queue.name )
>> == offsetof( struct _Thread_queue_Queue, _name ),
>> THREAD_QUEUE_SYSLOCK_QUEUE_NAME
>> );
>>
>> RTEMS_STATIC_ASSERT(
>> sizeof( Thread_queue_Syslock_queue )
>> == sizeof( struct _Thread_queue_Queue ),
>> THREAD_QUEUE_SYSLOCK_QUEUE_SIZE
>> );
>>
>> #if defined(RTEMS_SMP)
>> void _Thread_queue_Do_acquire_critical(
>> Thread_queue_Control *the_thread_queue,
>> ISR_lock_Context *lock_context
>> )
>> {
>> _Thread_queue_Queue_acquire_critical(
>> &the_thread_queue->Queue,
>> &the_thread_queue->Lock_stats,
>> lock_context
>> );
>>
>> becomes this after using the given configuration
>>
>> RTEMS_STATIC_ASSERT(sizeof(Thread_queue_Syslock_queue) ==
>> sizeof(struct _Thread_queue_Queue),
>> THREAD_QUEUE_SYSLOCK_QUEUE_SIZE);
>>
>> #if defined(RTEMS_SMP)
>> void _Thread_queue_Do_acquire_critical(Thread_queue_Control 
>> *the_thread_queue,
>> ISR_lock_Context *lock_context) {
>> _Thread_queue_Queue_acquire_critical(
>> &the_thread_queue->Queue, &the_thread_queue->Lock_stats, lock_context);
>>
>> Everything seems manageable except for this alignment issue...
>> This also throws more light on the changes using clang-format 
>> (https://lists.rtems.org/pipermail/devel/2018-December/024145.html)
>>
I think we're willing to concede the pointer alignment. However, it
would be worth spending some time to see if
https://reviews.llvm.org/D27651 can be made to work. The current state
of the code would need to be compared to the patch on that review
board.

Beyond that, documenting the clang-format options to use is next, and
then identifying a plan how to invoke clang-format during a git
workflow is needed.

>> On Thu, May 6, 2021 at 8:05 PM Joel Sherrill <j...@rtems.org> wrote:
>>>
>>>
>>>
>>> On Thu, May 6, 2021 at 12:47 PM Christian Mauderer <o...@c-mauderer.de> 
>>> wrote:
>>>>
>>>> Hello Ida and Gedare,
>>>>
>>>> On 06/05/2021 06:26, Gedare Bloom wrote:
>>>> > hi Ida,
>>>> >
>>>> > On Wed, May 5, 2021 at 3:21 PM Ida Delphine <idad...@gmail.com> wrote:
>>>> >>
>>>> >> Hello everyone,
>>>> >>
>>>> >> Regarding this project (https://devel.rtems.org/ticket/3860) I went 
>>>> >> with clang-format as we all agreed. I have tested it on some "score" 
>>>> >> files and it made some changes which I don't think are very much in 
>>>> >> line with the RTEMS coding style. However, it wasn't really clear if we 
>>>> >> will chage the RTEMS coding style or try to make changes to 
>>>> >> clang-format to fit the style.
>>>> >> Please will love to know the best option.
>>>> >>
>>>> > We will likely need to consider our choices carefully. If we can find
>>>> > a suitably close style that is already well-supported by clang, and
>>>> > get consensus from the maintainers on a change, then that might be the
>>>> > best route forward.
>>>>
>>>> +1
>>>>
>>>> > I think the first thing to do is take the examples
>>>> > that have been shown by Sebastian that are "close" but not quite
>>>> > perfect, and identify the cases where they differ with RTEMS style in
>>>> > order to present for discussion here. If consensus can't be reached to
>>>> > change the style, then we would need to have a plan for how to improve
>>>> > the existing tools for what we have.
>>>>
>>>> I also found the following tool quite useful to play with the clang
>>>> style config:
>>>>
>>>> https://zed0.co.uk/clang-format-configurator/
>>>>
>>>> Maybe it can help a bit to find out what certain options mean.
>>>>
>>>> >
>>>> > However, I think there is interest in doing less work on the tool
>>>> > side, and more work on how to integrate it into our workflows better.
>>>>
>>>> +1
>>>
>>>
>>> I agree with all of this from the student perspective. But we will have
>>> to come to some agreement on a machine producible format to
>>> be able to use the integration. A report on what doesn't match would
>>> give us something to chew on while Ida works the integration.
>>>
>>> --joel
>>>>
>>>>
>>>> >
>>>> >> Cheers,
>>>> >> Ida.
>>>> >> _______________________________________________
>>>> >> devel mailing list
>>>> >> devel@rtems.org
>>>> >> http://lists.rtems.org/mailman/listinfo/devel
>>>> > _______________________________________________
>>>> > devel mailing list
>>>> > devel@rtems.org
>>>> > http://lists.rtems.org/mailman/listinfo/devel
>>>> >
>>>> _______________________________________________
>>>> devel mailing list
>>>> devel@rtems.org
>>>> http://lists.rtems.org/mailman/listinfo/devel
_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

Reply via email to