Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c++ > #44630 > unrolled thread

This will work or not?

Started byMelzzzzz <mel@zzzzz.com>
First post2016-08-31 14:59 +0200
Last post2016-09-05 21:25 +0100
Articles 3 on this page of 123 — 25 participants

Back to article view | Back to comp.lang.c++


Contents

  This will work or not? Melzzzzz <mel@zzzzz.com> - 2016-08-31 14:59 +0200
    Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-08-31 15:20 +0200
      Re: This will work or not? mark <mark@invalid.invalid> - 2016-08-31 16:05 +0200
        Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-08-31 16:19 +0200
      Re: This will work or not? scott@slp53.sl.home (Scott Lurndal) - 2016-08-31 14:20 +0000
      Re: This will work or not? Bo Persson <bop@gmb.dk> - 2016-08-31 18:53 +0200
        Re: This will work or not? Tim Rentsch <txr@alumni.caltech.edu> - 2016-09-01 09:03 -0700
          Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-09-01 22:45 +0200
            Re: This will work or not? Tim Rentsch <txr@alumni.caltech.edu> - 2016-09-01 18:08 -0700
              Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-09-02 09:24 +0200
                Re: This will work or not? Tim Rentsch <txr@alumni.caltech.edu> - 2016-09-04 06:31 -0700
                  Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-09-04 20:19 +0200
    Re: This will work or not? Manfred <noname@invalid.add> - 2016-08-31 15:45 +0200
      Re: This will work or not? Melzzzzz <mel@zzzzz.com> - 2016-08-31 15:59 +0200
      Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-08-31 16:22 +0200
        Re: This will work or not? Manfred <noname@invalid.add> - 2016-08-31 17:06 +0200
          Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-08-31 19:29 +0200
            Re: This will work or not? Chris Vine <chris@cvine--nospam--.freeserve.co.uk> - 2016-08-31 21:52 +0100
              Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-09-01 09:07 +0200
                Re: This will work or not? Chris Vine <chris@cvine--nospam--.freeserve.co.uk> - 2016-09-01 12:30 +0100
              Re: This will work or not? Tim Rentsch <txr@alumni.caltech.edu> - 2016-09-01 09:01 -0700
                Re: This will work or not? Chris Vine <chris@cvine--nospam--.freeserve.co.uk> - 2016-09-01 18:16 +0100
                  Re: This will work or not? Tim Rentsch <txr@alumni.caltech.edu> - 2016-09-01 18:37 -0700
                    Re: This will work or not? Chris Vine <chris@cvine--nospam--.freeserve.co.uk> - 2016-09-02 10:42 +0100
                      Re: This will work or not? Tim Rentsch <txr@alumni.caltech.edu> - 2016-09-04 06:59 -0700
            Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-08-31 23:17 -0400
              Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-09-01 09:35 +0200
                Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-01 15:34 -0400
                  Re: This will work or not? me <crisdunbar@gmail.com> - 2016-09-01 13:50 -0700
                    Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-01 21:01 -0400
                      Re: This will work or not? me <crisdunbar@gmail.com> - 2016-09-01 19:02 -0700
                        Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-01 22:17 -0400
                          Re: This will work or not? me <crisdunbar@gmail.com> - 2016-09-02 08:19 -0700
                            Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-02 12:39 -0400
                              Re: This will work or not? me <crisdunbar@gmail.com> - 2016-09-02 12:26 -0700
                                Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-02 16:38 -0400
                                  Re: This will work or not? me <crisdunbar@gmail.com> - 2016-09-02 13:51 -0700
                                    Re: This will work or not? me <crisdunbar@gmail.com> - 2016-09-02 14:16 -0700
                                    Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-02 19:58 -0400
                                Re: This will work or not? Paavo Helde <myfirstname@osa.pri.ee> - 2016-09-02 23:56 +0300
                                  Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-09-03 17:58 +0200
                        Re: This will work or not? Manfred <noname@invalid.add> - 2016-09-02 11:41 +0200
                          Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-09-02 12:27 +0200
                            Re: This will work or not? Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-09-02 12:37 +0100
                              Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-09-02 17:39 +0200
                                Re: This will work or not? Melzzzzz <mel@zzzzz.com> - 2016-09-02 17:40 +0200
                                Re: This will work or not? Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-09-02 16:54 +0100
                                  Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-09-02 20:22 +0200
                            Re: This will work or not? Richard Damon <Richard@Damon-Family.org> - 2016-09-02 08:04 -0400
                              Re: This will work or not? BartC <bc@freeuk.com> - 2016-09-02 13:51 +0100
                                Re: This will work or not? Richard Damon <Richard@Damon-Family.org> - 2016-09-02 21:48 -0400
                            Re: This will work or not? Manfred <noname@invalid.add> - 2016-09-02 15:17 +0200
                              Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-09-02 17:46 +0200
                  Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-09-01 23:14 +0200
                    Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-01 21:02 -0400
                      Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-09-02 09:35 +0200
                        Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-02 08:50 -0400
                          Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-09-02 17:59 +0200
                            Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-02 12:49 -0400
                              Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-09-02 20:36 +0200
                                Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-02 16:32 -0400
                                  Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-09-03 18:08 +0200
                                    Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-03 18:25 -0400
                                      Re: This will work or not? Mr Flibble <flibbleREMOVETHISBIT@i42.co.uk> - 2016-09-03 23:51 +0100
                                        Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-03 21:48 -0400
                                          Re: This will work or not? Mr Flibble <flibbleREMOVETHISBIT@i42.co.uk> - 2016-09-04 03:48 +0100
                                            Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-03 23:05 -0400
                                              Re: This will work or not? Mr Flibble <flibbleREMOVETHISBIT@i42.co.uk> - 2016-09-04 05:02 +0100
                                                Re: This will work or not? Ben Bacarisse <ben.usenet@bsb.me.uk> - 2016-09-04 10:57 +0100
                                                  Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-04 09:40 -0400
                                                    Re: This will work or not? Mr Flibble <flibbleREMOVETHISBIT@i42.co.uk> - 2016-09-04 16:39 +0100
                                                      Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-04 12:46 -0400
                                                        Re: This will work or not? Mr Flibble <flibbleREMOVETHISBIT@i42.co.uk> - 2016-09-04 17:51 +0100
                                                          Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-04 13:07 -0400
                                                            Re: This will work or not? Mr Flibble <flibbleREMOVETHISBIT@i42.co.uk> - 2016-09-04 18:37 +0100
                                                              Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-04 17:16 -0400
                                                                Re: This will work or not? Mr Flibble <flibbleREMOVETHISBIT@i42.co.uk> - 2016-09-04 22:23 +0100
                                                                  Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-04 18:54 -0400
                                                        Re: This will work or not? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-09-04 09:58 -0700
                                                          Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-04 13:08 -0400
                                                            Re: This will work or not? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-09-04 10:21 -0700
                                                              Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-04 17:18 -0400
                                                                Re: This will work or not? Mr Flibble <flibbleREMOVETHISBIT@i42.co.uk> - 2016-09-04 22:24 +0100
                                                                  Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-04 18:56 -0400
                                                                    Re: This will work or not? Mr Flibble <flibbleREMOVETHISBIT@i42.co.uk> - 2016-09-05 00:27 +0100
                                                                      Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-04 22:53 -0400
                                                                        Re: This will work or not? Mr Flibble <flibbleREMOVETHISBIT@i42.co.uk> - 2016-09-05 18:18 +0100
                                                                          Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-05 15:27 -0400
                                                                            Re: This will work or not? Mr Flibble <flibbleREMOVETHISBIT@i42.co.uk> - 2016-09-05 20:32 +0100
                                                                              Re: This will work or not? woodbrian77@gmail.com - 2016-09-05 14:07 -0700
                                                                              Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-05 18:15 -0400
                                                                            Re: This will work or not? Ike Naar <ike@iceland.freeshell.org> - 2016-09-05 20:12 +0000
                                                                              Re: This will work or not? Mr Flibble <flibbleREMOVETHISBIT@i42.co.uk> - 2016-09-05 22:05 +0100
                                                                              Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-05 18:16 -0400
                                                                                Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-09-06 08:47 +0200
                                                                                  Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-06 09:12 -0400
                                                                                    Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-09-06 16:31 +0200
                                                                                      Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-06 11:20 -0400
                                                                  Re: This will work or not? bighe.trole@gmail.com - 2016-09-04 18:55 -0700
                                                                    Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-04 22:55 -0400
                                                                Re: This will work or not? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-09-04 17:17 -0700
                                                                  Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-04 22:57 -0400
                                                                    Re: This will work or not? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2016-09-05 11:20 -0700
                                                      Re: This will work or not? Luuk <luuk@invalid.lan> - 2016-09-04 18:54 +0200
                                                        Re: This will work or not? Mr Flibble <flibbleREMOVETHISBIT@i42.co.uk> - 2016-09-04 17:59 +0100
                                                        Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-04 13:08 -0400
                                                        Re: This will work or not? David Brown <david.brown@hesbynett.no> - 2016-09-04 20:25 +0200
                                                          Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-04 17:20 -0400
                                              Re: This will work or not? Öö Tiib <ootiib@hot.ee> - 2016-09-04 02:36 -0700
                                                Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-04 09:41 -0400
                                        Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-03 21:49 -0400
                                          Re: This will work or not? Mr Flibble <flibbleREMOVETHISBIT@i42.co.uk> - 2016-09-04 03:49 +0100
                                            Re: This will work or not? Jerry Stuckle <jstucklex@attglobal.net> - 2016-09-03 23:06 -0400
                                              Re: This will work or not? woodbrian77@gmail.com - 2016-09-03 21:16 -0700
    Re: This will work or not? Vir Campestris <vir.campestris@invalid.invalid> - 2016-08-31 21:08 +0100
    Re: This will work or not? "Alf P. Steinbach" <alf.p.steinbach+usenet@gmail.com> - 2016-09-01 02:28 +0200
      Re: This will work or not? Öö Tiib <ootiib@hot.ee> - 2016-09-01 01:28 -0700
      Re: This will work or not? "Chris M. Thomasson" <invalid@invalid.invalid> - 2016-09-02 12:06 -0700
    Re: This will work or not? Öö Tiib <ootiib@hot.ee> - 2016-09-05 02:21 -0700
      Re: This will work or not? Melzzzzz <mel@zzzzz.com> - 2016-09-05 13:38 +0200
    Re: This will work or not? Juha Nieminen <nospam@thanks.invalid> - 2016-09-05 11:34 +0000
      Re: This will work or not? Melzzzzz <mel@zzzzz.com> - 2016-09-05 13:36 +0200
        Re: This will work or not? Vir Campestris <vir.campestris@invalid.invalid> - 2016-09-05 21:25 +0100

Page 7 of 7 — ← Prev page 1 2 3 4 5 6 [7]


#44859

FromJuha Nieminen <nospam@thanks.invalid>
Date2016-09-05 11:34 +0000
Message-ID<nqjl7b$11es$1@adenine.netfront.net>
In reply to#44630
Melzzzzz <mel@zzzzz.com> wrote:
> struct Problem{
>         uint32_t a;
>         uint32_t b;
>         uint64_t c;
>         uint32_t d;
>         bool check_it() {
>                 for (uint32_t* i = &a;i != &d; ++i)
>                         if (*i>0) return true;
>                 return false;
>         }
> 
> };

Rather than mess with implementation-defined and undefined behavior
trickery, just redesign your struct better, in a manner that allows
you to do what you want (ie. iterate through the member variables
in a loop) without compromising code quality and standard conforming.

For example:

struct Problem
{
    std::uint32_t values[4];

    std::uint32_t a() const { return values[0]; }
    void a(std::uint32_t v) { values[0] = v; }
    // and same for b(), c() and d().
};

Now you can safely iterate through the values in a loop.

--- news://freenews.netfront.net/ - complaints: news@netfront.net ---

[toc] | [prev] | [next] | [standalone]


#44860

FromMelzzzzz <mel@zzzzz.com>
Date2016-09-05 13:36 +0200
Message-ID<20160905133650.798aaabb@maxa-pc>
In reply to#44859
On Mon, 5 Sep 2016 11:34:05 +0000 (UTC)
Juha Nieminen <nospam@thanks.invalid> wrote:

> Melzzzzz <mel@zzzzz.com> wrote:
> > struct Problem{
> >         uint32_t a;
> >         uint32_t b;
> >         uint64_t c;
> >         uint32_t d;
> >         bool check_it() {
> >                 for (uint32_t* i = &a;i != &d; ++i)
> >                         if (*i>0) return true;
> >                 return false;
> >         }
> > 
> > };  
> 
> Rather than mess with implementation-defined and undefined behavior
> trickery, just redesign your struct better, in a manner that allows
> you to do what you want (ie. iterate through the member variables
> in a loop) without compromising code quality and standard conforming.
> 
> For example:
> 
> struct Problem
> {
>     std::uint32_t values[4];
> 
>     std::uint32_t a() const { return values[0]; }
>     void a(std::uint32_t v) { values[0] = v; }
>     // and same for b(), c() and d().
> };
> 
> Now you can safely iterate through the values in a loop.
> 
> --- news://freenews.netfront.net/ - complaints: news@netfront.net ---

What about uint64_t ? It's a big struct I just made it minimal to show
problem.

[toc] | [prev] | [next] | [standalone]


#44875

FromVir Campestris <vir.campestris@invalid.invalid>
Date2016-09-05 21:25 +0100
Message-ID<FtmdnThNQf1NSVDKnZ2dnUU78X2dnZ2d@brightview.co.uk>
In reply to#44860
On 05/09/2016 12:36, Melzzzzz wrote:
> On Mon, 5 Sep 2016 11:34:05 +0000 (UTC)
> Juha Nieminen <nospam@thanks.invalid> wrote:
>
>> Melzzzzz <mel@zzzzz.com> wrote:
>>> struct Problem{
>>>         uint32_t a;
>>>         uint32_t b;
>>>         uint64_t c;
>>>         uint32_t d;
>>>         bool check_it() {
>>>                 for (uint32_t* i = &a;i != &d; ++i)
>>>                         if (*i>0) return true;
>>>                 return false;
>>>         }
>>>
>>> };
>>
>> Rather than mess with implementation-defined and undefined behavior
>> trickery, just redesign your struct better, in a manner that allows
>> you to do what you want (ie. iterate through the member variables
>> in a loop) without compromising code quality and standard conforming.
>>
>> For example:
>>
>> struct Problem
>> {
>>     std::uint32_t values[4];
>>
>>     std::uint32_t a() const { return values[0]; }
>>     void a(std::uint32_t v) { values[0] = v; }
>>     // and same for b(), c() and d().
>> };
>>
>> Now you can safely iterate through the values in a loop.
>>
>> --- news://freenews.netfront.net/ - complaints: news@netfront.net ---
>
> What about uint64_t ? It's a big struct I just made it minimal to show
> problem.
>

I would have thought it clearly nonsense to iterate through a collection 
of different sized items. (the effect will depend on byte order, at the 
least).

So you ought to have

  struct Problem
  {
      std::uint32_t values[3];
      std::uint64_6 wide_value;

and the rest as Juha wrote.

Andy

[toc] | [prev] | [standalone]


Page 7 of 7 — ← Prev page 1 2 3 4 5 6 [7]

Back to top | Article view | comp.lang.c++


csiph-web