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
3fc5037b
Commit
3fc5037b
authored
Apr 08, 1999
by
Mark Mitchell
Committed by
Mark Mitchell
Apr 08, 1999
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
* search.c (template_self_reference_p): Tweak.
From-SVN: r26296
parent
c86e69b2
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
45 additions
and
4 deletions
+45
-4
gcc/cp/ChangeLog
+9
-0
gcc/cp/init.c
+3
-4
gcc/cp/search.c
+1
-0
gcc/testsuite/g++.old-deja/g++.other/sizeof1.C
+12
-0
gcc/testsuite/g++.old-deja/g++.pt/crash34.C
+20
-0
No files found.
gcc/cp/ChangeLog
View file @
3fc5037b
1999-04-08 Mark Mitchell <mark@codesourcery.com>
* search.c (template_self_reference_p): Tweak.
1999-04-07 Mark Mitchell <mark@codesourcery.com>
* init.c (build_offset_ref): Don't build yet another weird data
structure to describe overloaded functions.
1999-04-06 Mark Mitchell <mark@codesourcery.com>
* cp-tree.h (BASELINK_P): New macro.
...
...
gcc/cp/init.c
View file @
3fc5037b
...
...
@@ -1572,7 +1572,7 @@ build_offset_ref (type, name)
/* A lot of this logic is now handled in lookup_field and
lookup_fnfield. */
if
(
member
&&
TREE_CODE
(
member
)
==
TREE_LIST
)
if
(
member
&&
BASELINK_P
(
member
)
)
{
/* Go from the TREE_BASELINK to the member function info. */
tree
fnfields
=
member
;
...
...
@@ -1627,9 +1627,8 @@ build_offset_ref (type, name)
&&
!
allocation_temporary_p
())
fnfields
=
copy_list
(
fnfields
);
t
=
build_tree_list
(
error_mark_node
,
fnfields
);
TREE_TYPE
(
t
)
=
build_offset_type
(
type
,
unknown_type_node
);
return
t
;
TREE_TYPE
(
fnfields
)
=
build_offset_type
(
type
,
unknown_type_node
);
return
fnfields
;
}
t
=
member
;
...
...
gcc/cp/search.c
View file @
3fc5037b
...
...
@@ -1190,6 +1190,7 @@ template_self_reference_p (type, decl)
tree
decl
;
{
return
(
CLASSTYPE_USE_TEMPLATE
(
type
)
&&
PRIMARY_TEMPLATE_P
(
CLASSTYPE_TI_TEMPLATE
(
type
))
&&
TREE_CODE
(
decl
)
==
TYPE_DECL
&&
DECL_ARTIFICIAL
(
decl
)
&&
DECL_NAME
(
decl
)
==
constructor_name
(
type
));
...
...
gcc/testsuite/g++.old-deja/g++.other/sizeof1.C
0 → 100644
View file @
3fc5037b
// Build don't link:
// Origin: Jason Merrill <jason@cygnus.com>
struct
X
{
int
f
();
int
f
(
int
);
};
void
f
(
int
i
)
{
i
=
sizeof
(
X
::
f
);
// ERROR - cannot take sizeof a member function
}
gcc/testsuite/g++.old-deja/g++.pt/crash34.C
0 → 100644
View file @
3fc5037b
// Build don't link:
// Origin: Theodore Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
template
<
class
T
>
class
A
{
public
:
class
B
{
};
class
C
:
public
B
{
public
:
C
(
A
&
)
:
B
()
{
}
};
C
f
()
{
return
C
(
*
this
);
}
};
int
main
()
{
A
<
int
>
a
;
a
.
f
();
}
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