[Bug fortran/30406] ICE in LOGICAL(8) functions

2007-01-10 Thread fxcoudert at gcc dot gnu dot org
--- Comment #14 from fxcoudert at gcc dot gnu dot org 2007-01-10 08:11 --- In emit_move_insn, the failing assert is: (gdb) l 3275 3270{ 3271 enum machine_mode mode = GET_MODE (x); 3272 rtx y_cst = NULL_RTX; 3273 rtx last_insn, set; 3274 3275 gcc_assert (mode !=

[Bug fortran/30406] ICE in LOGICAL(8) functions

2007-01-10 Thread pinskia at gcc dot gnu dot org
--- Comment #15 from pinskia at gcc dot gnu dot org 2007-01-10 09:07 --- The result decl should have a RTL of a DI mode: result_decl 0x42e150c0 D.946 type boolean_type 0x42e218c0 logical8 unsigned ignored regdecl DI file a.f90 line 1 size integer_cst 0x42e0a8a0 64 unit size

[Bug fortran/30406] ICE in LOGICAL(8) functions

2007-01-10 Thread pinskia at gcc dot gnu dot org
--- Comment #16 from pinskia at gcc dot gnu dot org 2007-01-10 22:51 --- The type is correct when the decl is created: Breakpoint 3, build_decl_stat (code=RESULT_DECL, name=0x0, type=0xb7c55384) at ../../gcc/tree.c:3250 3250 t = make_node_stat (code PASS_MEM_STAT); (gdb) p

[Bug fortran/30406] ICE in LOGICAL(8) functions

2007-01-10 Thread pinskia at gcc dot gnu dot org
--- Comment #17 from pinskia at gcc dot gnu dot org 2007-01-10 22:56 --- hard_function_value returns the wrong rtl ... -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30406

[Bug fortran/30406] ICE in LOGICAL(8) functions

2007-01-09 Thread fxcoudert at gcc dot gnu dot org
--- Comment #9 from fxcoudert at gcc dot gnu dot org 2007-01-09 16:13 --- Confirmed on MacOS 10.4.8, using gfortran 4.3.0 20070102 (experimental). Cannot do more at the moment. -- fxcoudert at gcc dot gnu dot org changed: What|Removed |Added

[Bug fortran/30406] ICE in LOGICAL(8) functions

2007-01-09 Thread dominiq at lps dot ens dot fr
--- Comment #10 from dominiq at lps dot ens dot fr 2007-01-09 22:06 --- Subject: Re: ICE in LOGICAL(8) functions First, the crash report I have posted yesterday has nothing to do with this bug that is really an internal compiler error (caught within the compiler) and not a crash.

[Bug fortran/30406] ICE in LOGICAL(8) functions

2007-01-09 Thread pinskia at gcc dot gnu dot org
--- Comment #11 from pinskia at gcc dot gnu dot org 2007-01-09 22:08 --- (In reply to comment #10) Second, what is the C equivalent of logical(8)? I am wondering if the same ICE occurs in the equivalent C code. In C (and C++) Boolean types only have one size, on ppc-darwin that size

[Bug fortran/30406] ICE in LOGICAL(8) functions

2007-01-09 Thread dominiq at lps dot ens dot fr
--- Comment #12 from dominiq at lps dot ens dot fr 2007-01-09 22:10 --- Subject: Re: ICE in LOGICAL(8) functions In C (and C++) Boolean types only have one size ... Too bad!-) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30406

[Bug fortran/30406] ICE in LOGICAL(8) functions

2007-01-09 Thread fxcoudert at gcc dot gnu dot org
--- Comment #13 from fxcoudert at gcc dot gnu dot org 2007-01-10 06:43 --- $ cat a.f90 function f(l) logical(8) :: f logical(8) :: l f = .not.l end function f $ gfortran a.f90 a.f90: In function ‘f’: a.f90:1: internal compiler error: in emit_move_insn, at expr.c:3276 $ gfortran -v

[Bug fortran/30406] ICE in LOGICAL(8) functions

2007-01-08 Thread burnus at gcc dot gnu dot org
--- Comment #1 from burnus at gcc dot gnu dot org 2007-01-08 13:33 --- Which version of gfortran did you use and which options? I cannot reproduce it with 4.3.0 20070108 on x86_64-unknown-linux-gnu. (Thus it is either platform specific or a newer or older bug than my version.) --

[Bug fortran/30406] ICE in LOGICAL(8) functions

2007-01-08 Thread dominiq at lps dot ens dot fr
--- Comment #2 from dominiq at lps dot ens dot fr 2007-01-08 13:42 --- Subject: Re: ICE in LOGICAL(8) functions Which version of gfortran did you use and which options? PPC OSX 10.3, version 4.3.0 20070105 Note that I did not see the ICE on x86_64-unknown-linux-gnu version 4.3.0

[Bug fortran/30406] ICE in LOGICAL(8) functions

2007-01-08 Thread kargl at gcc dot gnu dot org
--- Comment #3 from kargl at gcc dot gnu dot org 2007-01-08 17:38 --- Dominique, can you post the output file created with -fdump-tree-originial. Like Tobias, I can compile this without a problem. Here's my dump f (l) { logical8 __result_f; __result_f = *l == 0; return

[Bug fortran/30406] ICE in LOGICAL(8) functions

2007-01-08 Thread pinskia at gcc dot gnu dot org
--- Comment #4 from pinskia at gcc dot gnu dot org 2007-01-08 17:43 --- (In reply to comment #3) Dominique, can you post the output file created with -fdump-tree-originial. Like Tobias, I can compile this without a problem. Here's my dump If yours is the same, we have a target

[Bug fortran/30406] ICE in LOGICAL(8) functions

2007-01-08 Thread dominiq at lps dot ens dot fr
--- Comment #5 from dominiq at lps dot ens dot fr 2007-01-08 19:05 --- Subject: Re: ICE in LOGICAL(8) functions Dominique, can you post the output file created with -fdump-tree-originial. Unfotunately I also got an ICE with -fdump-tree-original. The crash trace gives: 0 f951

[Bug fortran/30406] ICE in LOGICAL(8) functions

2007-01-08 Thread dominiq at lps dot ens dot fr
--- Comment #6 from dominiq at lps dot ens dot fr 2007-01-08 20:19 --- Subject: Re: ICE in LOGICAL(8) functions I got the same error with OSX 10.4, gcc version 4.2.0 20060617. I was wrong in my previous mail, -fdump-tree-original gives: f (l) { logical8 __result_f; __result_f =

[Bug fortran/30406] ICE in LOGICAL(8) functions

2007-01-08 Thread sgk at troutmask dot apl dot washington dot edu
--- Comment #7 from sgk at troutmask dot apl dot washington dot edu 2007-01-08 20:34 --- Subject: Re: ICE in LOGICAL(8) functions On Mon, Jan 08, 2007 at 08:19:10PM -, dominiq at lps dot ens dot fr wrote: I got the same error with OSX 10.4, gcc version 4.2.0 20060617. I was

[Bug fortran/30406] ICE in LOGICAL(8) functions

2007-01-08 Thread dominiq at lps dot ens dot fr
--- Comment #8 from dominiq at lps dot ens dot fr 2007-01-08 20:49 --- Subject: Re: ICE in LOGICAL(8) functions Can you verify that OSX on PPC has logical(8)? I have tested: logical(8) :: l1, l2 l1 = .true. l2 = .false. print *, l1.neqv.l2, kind(l1.neqv.l2) end it returns T