Re: Error on enum statement. Can sombody take a little time and explain the enum and the error?

2017-01-02 Thread Peter Kovacs
Okay casting to value type did fix the error message. Should I commit 
the fix to trunc?



@Shannon:

I could imagine it could be that my gcc version my dirstibution uses. 
Someone said he is running into errors because of it.


My distribution compiles with: gcc (GCC) 6.2.1 20160830

However I do not find this a satisfactory explanation :)


All the best

Peter


On 02.01.2017 07:07, Dennis E. Hamilton wrote:



-Original Message-
From: Peter Kovacs [mailto:legi...@gmail.com]
Sent: Sunday, January 1, 2017 17:07
To: dev <dev@openoffice.apache.org>
Subject: Error on enum statement. Can sombody take a little time and
explain the enum and the error?

Hello all,


I tried to compile the source again. since I had again missing
definition on trunc I wanted to know if I can build at least the 4.1.3
release. I checked out the branch and started all over.

And I ran into following Issue:

../inc/basebmp/packedpixeliterator.hxx:80:10: error: enumerator value
for 'bit_mask' is not an integer constant

The corresponding code is:

enum {
  /** The number of pixel within a single value_type value
   */
num_intraword_positions=sizeof(value_type)*8/bits_per_pixel,
  /** Bit mask for one pixel (least significant bits)
   */
  bit_mask=~(~0 << bits_per_pixel)

[orcmid]


Try a couple of things:

  1. Put spaces in the "=~" to be something like " = ~" in the definition of 
bit_mask.

  2. If that makes no difference, try

   bit_mask = ~ ((value_type)(~0 << bits_per_pixel))

 and if that doesn't work, see if

   bit_mask = ~ ((int)(~0 << bits_per_pixel))

 or even

   bit_mask = (int) (~(~0 << bits_per_pixel))

 get the job done.

It seems strange for an enum being used this way.  It is a clumsy way to define 
two numeric constants that are not involved in an enumeration at all.


  };


An explanation would be great. I found [1] on the net, but I am realy
unsure if this is the same. And I do not understand the code in
packedpixeliterator at all.

All the best and thanks for your time.

Peter


[1]
http://stackoverflow.com/questions/18090541/how-to-set-the-value-of-an-
enumeration-constant-outside-the-range-of-int#18090940




-
To unsubscribe, e-mail: dev-unsubscr...@openoffice.apache.org
For additional commands, e-mail: dev-h...@openoffice.apache.org



-
To unsubscribe, e-mail: dev-unsubscr...@openoffice.apache.org
For additional commands, e-mail: dev-h...@openoffice.apache.org




-
To unsubscribe, e-mail: dev-unsubscr...@openoffice.apache.org
For additional commands, e-mail: dev-h...@openoffice.apache.org



Re: Error on enum statement. Can sombody take a little time and explain the enum and the error?

2017-01-01 Thread Patricia Shanahan
If this is the 4.1.3 source, it has been compiled many times. I would 
look for a configuration problem affecting the the value of bits_per_pixel.



On 01/02/2017 06:07 AM, Dennis E. Hamilton wrote:



-Original Message-
From: Peter Kovacs [mailto:legi...@gmail.com]
Sent: Sunday, January 1, 2017 17:07
To: dev <dev@openoffice.apache.org>
Subject: Error on enum statement. Can sombody take a little time and
explain the enum and the error?

Hello all,


I tried to compile the source again. since I had again missing
definition on trunc I wanted to know if I can build at least the 4.1.3
release. I checked out the branch and started all over.

And I ran into following Issue:

../inc/basebmp/packedpixeliterator.hxx:80:10: error: enumerator value
for 'bit_mask' is not an integer constant

The corresponding code is:

enum {
  /** The number of pixel within a single value_type value
   */
num_intraword_positions=sizeof(value_type)*8/bits_per_pixel,
  /** Bit mask for one pixel (least significant bits)
   */
  bit_mask=~(~0 << bits_per_pixel)

[orcmid]


Try a couple of things:

  1. Put spaces in the "=~" to be something like " = ~" in the definition of 
bit_mask.

  2. If that makes no difference, try

   bit_mask = ~ ((value_type)(~0 << bits_per_pixel))

 and if that doesn't work, see if

   bit_mask = ~ ((int)(~0 << bits_per_pixel))

 or even

   bit_mask = (int) (~(~0 << bits_per_pixel))

 get the job done.

It seems strange for an enum being used this way.  It is a clumsy way to define 
two numeric constants that are not involved in an enumeration at all.


  };


An explanation would be great. I found [1] on the net, but I am realy
unsure if this is the same. And I do not understand the code in
packedpixeliterator at all.

All the best and thanks for your time.

Peter


[1]
http://stackoverflow.com/questions/18090541/how-to-set-the-value-of-an-
enumeration-constant-outside-the-range-of-int#18090940




-
To unsubscribe, e-mail: dev-unsubscr...@openoffice.apache.org
For additional commands, e-mail: dev-h...@openoffice.apache.org



-
To unsubscribe, e-mail: dev-unsubscr...@openoffice.apache.org
For additional commands, e-mail: dev-h...@openoffice.apache.org




-
To unsubscribe, e-mail: dev-unsubscr...@openoffice.apache.org
For additional commands, e-mail: dev-h...@openoffice.apache.org



RE: Error on enum statement. Can sombody take a little time and explain the enum and the error?

2017-01-01 Thread Dennis E. Hamilton


> -Original Message-
> From: Peter Kovacs [mailto:legi...@gmail.com]
> Sent: Sunday, January 1, 2017 17:07
> To: dev <dev@openoffice.apache.org>
> Subject: Error on enum statement. Can sombody take a little time and
> explain the enum and the error?
> 
> Hello all,
> 
> 
> I tried to compile the source again. since I had again missing
> definition on trunc I wanted to know if I can build at least the 4.1.3
> release. I checked out the branch and started all over.
> 
> And I ran into following Issue:
> 
> ../inc/basebmp/packedpixeliterator.hxx:80:10: error: enumerator value
> for 'bit_mask' is not an integer constant
> 
> The corresponding code is:
> 
>enum {
>  /** The number of pixel within a single value_type value
>   */
> num_intraword_positions=sizeof(value_type)*8/bits_per_pixel,
>  /** Bit mask for one pixel (least significant bits)
>   */
>  bit_mask=~(~0 << bits_per_pixel)
[orcmid] 


Try a couple of things:

 1. Put spaces in the "=~" to be something like " = ~" in the definition of 
bit_mask.

 2. If that makes no difference, try 

  bit_mask = ~ ((value_type)(~0 << bits_per_pixel))

and if that doesn't work, see if 

  bit_mask = ~ ((int)(~0 << bits_per_pixel))

or even

  bit_mask = (int) (~(~0 << bits_per_pixel))

get the job done.

It seems strange for an enum being used this way.  It is a clumsy way to define 
two numeric constants that are not involved in an enumeration at all.

>  };
> 
> 
> An explanation would be great. I found [1] on the net, but I am realy
> unsure if this is the same. And I do not understand the code in
> packedpixeliterator at all.
> 
> All the best and thanks for your time.
> 
> Peter
> 
> 
> [1]
> http://stackoverflow.com/questions/18090541/how-to-set-the-value-of-an-
> enumeration-constant-outside-the-range-of-int#18090940
> 
> 
> 
> 
> -
> To unsubscribe, e-mail: dev-unsubscr...@openoffice.apache.org
> For additional commands, e-mail: dev-h...@openoffice.apache.org



-
To unsubscribe, e-mail: dev-unsubscr...@openoffice.apache.org
For additional commands, e-mail: dev-h...@openoffice.apache.org



Error on enum statement. Can sombody take a little time and explain the enum and the error?

2017-01-01 Thread Peter Kovacs

Hello all,


I tried to compile the source again. since I had again missing 
definition on trunc I wanted to know if I can build at least the 4.1.3 
release. I checked out the branch and started all over.


And I ran into following Issue:

../inc/basebmp/packedpixeliterator.hxx:80:10: error: enumerator value 
for 'bit_mask' is not an integer constant


The corresponding code is:

  enum {
/** The number of pixel within a single value_type value
 */
num_intraword_positions=sizeof(value_type)*8/bits_per_pixel,
/** Bit mask for one pixel (least significant bits)
 */
bit_mask=~(~0 << bits_per_pixel)
};


An explanation would be great. I found [1] on the net, but I am realy 
unsure if this is the same. And I do not understand the code in 
packedpixeliterator at all.


All the best and thanks for your time.

Peter


[1] 
http://stackoverflow.com/questions/18090541/how-to-set-the-value-of-an-enumeration-constant-outside-the-range-of-int#18090940





-
To unsubscribe, e-mail: dev-unsubscr...@openoffice.apache.org
For additional commands, e-mail: dev-h...@openoffice.apache.org