Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
R
riscv-gcc-1
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lvzhengyang
riscv-gcc-1
Commits
83647bf4
Commit
83647bf4
authored
Nov 24, 2006
by
Tobias Schlüter
Committed by
Tobias Schlüter
Nov 24, 2006
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
* gfortran.dg/overload_1.f90: New test.
From-SVN: r119135
parent
3a2a61a2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
187 additions
and
0 deletions
+187
-0
gcc/testsuite/ChangeLog
+4
-0
gcc/testsuite/gfortran.dg/overload_1.f90
+183
-0
No files found.
gcc/testsuite/ChangeLog
View file @
83647bf4
2006
-
11
-
23
Tobias
Schlueter
<
tobias
.
schlueter
@physik
.
uni
-
muenchen
.
de
>
*
gfortran
.
dg
/
overload_1
.
f90
:
New
test
.
2006
-
11
-
23
Manuel
Lopez
-
Ibanez
<
manu
@gcc
.
gnu
.
org
>
PR
c
/
9072
gcc/testsuite/gfortran.dg/overload_1.f90
0 → 100644
View file @
83647bf4
! { dg-do run }
! tests that operator overloading works correctly for operators with
! different spellings
module
m
type
t
integer
::
i
end
type
t
interface
operator
(
==
)
module
procedure
teq
end
interface
interface
operator
(/
=
)
module
procedure
tne
end
interface
interface
operator
(
>
)
module
procedure
tgt
end
interface
interface
operator
(
>=
)
module
procedure
tge
end
interface
interface
operator
(
<
)
module
procedure
tlt
end
interface
interface
operator
(
<=
)
module
procedure
tle
end
interface
type
u
integer
::
i
end
type
u
interface
operator
(
.eq.
)
module
procedure
ueq
end
interface
interface
operator
(
.ne.
)
module
procedure
une
end
interface
interface
operator
(
.gt.
)
module
procedure
ugt
end
interface
interface
operator
(
.ge.
)
module
procedure
uge
end
interface
interface
operator
(
.lt.
)
module
procedure
ult
end
interface
interface
operator
(
.le.
)
module
procedure
ule
end
interface
contains
function
teq
(
a
,
b
)
logical
teq
type
(
t
),
intent
(
in
)
::
a
,
b
teq
=
a
%
i
==
b
%
i
end
function
teq
function
tne
(
a
,
b
)
logical
tne
type
(
t
),
intent
(
in
)
::
a
,
b
tne
=
a
%
i
/
=
b
%
i
end
function
tne
function
tgt
(
a
,
b
)
logical
tgt
type
(
t
),
intent
(
in
)
::
a
,
b
tgt
=
a
%
i
>
b
%
i
end
function
tgt
function
tge
(
a
,
b
)
logical
tge
type
(
t
),
intent
(
in
)
::
a
,
b
tge
=
a
%
i
>=
b
%
i
end
function
tge
function
tlt
(
a
,
b
)
logical
tlt
type
(
t
),
intent
(
in
)
::
a
,
b
tlt
=
a
%
i
<
b
%
i
end
function
tlt
function
tle
(
a
,
b
)
logical
tle
type
(
t
),
intent
(
in
)
::
a
,
b
tle
=
a
%
i
<=
b
%
i
end
function
tle
function
ueq
(
a
,
b
)
logical
ueq
type
(
u
),
intent
(
in
)
::
a
,
b
ueq
=
a
%
i
==
b
%
i
end
function
ueq
function
une
(
a
,
b
)
logical
une
type
(
u
),
intent
(
in
)
::
a
,
b
une
=
a
%
i
/
=
b
%
i
end
function
une
function
ugt
(
a
,
b
)
logical
ugt
type
(
u
),
intent
(
in
)
::
a
,
b
ugt
=
a
%
i
>
b
%
i
end
function
ugt
function
uge
(
a
,
b
)
logical
uge
type
(
u
),
intent
(
in
)
::
a
,
b
uge
=
a
%
i
>=
b
%
i
end
function
uge
function
ult
(
a
,
b
)
logical
ult
type
(
u
),
intent
(
in
)
::
a
,
b
ult
=
a
%
i
<
b
%
i
end
function
ult
function
ule
(
a
,
b
)
logical
ule
type
(
u
),
intent
(
in
)
::
a
,
b
ule
=
a
%
i
<=
b
%
i
end
function
ule
end
module
m
program
main
call
checkt
call
checku
contains
subroutine
checkt
use
m
type
(
t
)
::
a
,
b
logical
::
r1
(
6
),
r2
(
6
)
a
%
i
=
0
;
b
%
i
=
1
r1
=
(/
a
==
b
,
a
/
=
b
,
a
<
b
,
a
<=
b
,
a
>
b
,
a
>=
b
/)
r2
=
(/
a
.eq.
b
,
a
.ne.
b
,
a
.lt.
b
,
a
.le.
b
,
a
.gt.
b
,
a
.ge.
b
/)
if
(
any
(
r1
.neqv.
r2
))
call
abort
if
(
any
(
r1
.neqv.
&
(/
.false.
,
.true.
,
.true.
,
.true.
,
.false.
,
.false.
/)
))
call
&
&
abort
end
subroutine
checkt
subroutine
checku
use
m
type
(
u
)
::
a
,
b
logical
::
r1
(
6
),
r2
(
6
)
a
%
i
=
0
;
b
%
i
=
1
r1
=
(/
a
==
b
,
a
/
=
b
,
a
<
b
,
a
<=
b
,
a
>
b
,
a
>=
b
/)
r2
=
(/
a
.eq.
b
,
a
.ne.
b
,
a
.lt.
b
,
a
.le.
b
,
a
.gt.
b
,
a
.ge.
b
/)
if
(
any
(
r1
.neqv.
r2
))
call
abort
if
(
any
(
r1
.neqv.
&
(/
.false.
,
.true.
,
.true.
,
.true.
,
.false.
,
.false.
/)
))
call
&
&
abort
end
subroutine
checku
end
program
main
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment