This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/35469] [4.3/4.4 Regression] Rejects JArray<jboolean>
- From: "rguenther at suse dot de" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 8 Mar 2008 21:17:07 -0000
- Subject: [Bug c++/35469] [4.3/4.4 Regression] Rejects JArray<jboolean>
- References: <bug-35469-10053@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #4 from rguenther at suse dot de 2008-03-08 21:17 -------
Subject: Re: [4.3/4.4 Regression] Rejects JArray<jboolean>
On Sat, 8 Mar 2008, jakub at gcc dot gnu dot org wrote:
> ------- Comment #3 from jakub at gcc dot gnu dot org 2008-03-08 20:55 -------
> jboolean is lost in convert_template_argument:
> /* We only form one instance of each template specialization.
> Therefore, if we use a non-canonical variant (i.e., a
> typedef), any future messages referring to the type will use
> the typedef, which is confusing if those future uses do not
> themselves also use the typedef. */
> if (TYPE_P (val))
> val = canonical_type_variant (val);
> As jboolean is now everywhere but on ppc-darwin a variant of bool, and only the
> former has TYPE_FOR_JAVA set, we have this error.
> Caused by http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=131840
> I guess the easiest fix is just make jboolean make_unsigned_type (1) on all
> targets, not just on ppc-darwin.
This will cause wrong code generation for
jboolean i = 1;
i += 2;
Richard.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35469