public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/20303] New: Can't push more than 16 nested visibility
@ 2005-03-03 18:20 hjl at lucon dot org
  2005-03-03 18:43 ` [Bug c/20303] " pinskia at gcc dot gnu dot org
                   ` (15 more replies)
  0 siblings, 16 replies; 17+ messages in thread
From: hjl at lucon dot org @ 2005-03-03 18:20 UTC (permalink / raw)
  To: gcc-bugs

When

#pragma GCC visibility push(default)
#pragma GCC visibility pop

are used for header file wrappers, we may have more 16

#pragma GCC visibility push(default)

Currently gcc will fail.

-- 
           Summary: Can't push more than 16 nested visibility
           Product: gcc
           Version: 4.0.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: c
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: hjl at lucon dot org
                CC: gcc-bugs at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20303


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [Bug c/20303] Can't push more than 16 nested visibility
  2005-03-03 18:20 [Bug c/20303] New: Can't push more than 16 nested visibility hjl at lucon dot org
@ 2005-03-03 18:43 ` pinskia at gcc dot gnu dot org
  2005-03-03 18:47 ` hjl at lucon dot org
                   ` (14 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-03-03 18:43 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-03-03 18:43 -------
This is a documented behavior.

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20303


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [Bug c/20303] Can't push more than 16 nested visibility
  2005-03-03 18:20 [Bug c/20303] New: Can't push more than 16 nested visibility hjl at lucon dot org
  2005-03-03 18:43 ` [Bug c/20303] " pinskia at gcc dot gnu dot org
@ 2005-03-03 18:47 ` hjl at lucon dot org
  2005-03-03 19:19 ` hjl at lucon dot org
                   ` (13 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: hjl at lucon dot org @ 2005-03-03 18:47 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From hjl at lucon dot org  2005-03-03 18:47 -------
It makes it less useful for header file wrappers. Supporting the case of N (N>16)

#pragma GCC visibility push(default)

followed by N

#pragma GCC visibility pop

shouldn't be very hard.

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20303


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [Bug c/20303] Can't push more than 16 nested visibility
  2005-03-03 18:20 [Bug c/20303] New: Can't push more than 16 nested visibility hjl at lucon dot org
  2005-03-03 18:43 ` [Bug c/20303] " pinskia at gcc dot gnu dot org
  2005-03-03 18:47 ` hjl at lucon dot org
@ 2005-03-03 19:19 ` hjl at lucon dot org
  2005-03-03 22:58 ` joseph at codesourcery dot com
                   ` (12 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: hjl at lucon dot org @ 2005-03-03 19:19 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From hjl at lucon dot org  2005-03-03 19:19 -------
A patch is posted at

http://gcc.gnu.org/ml/gcc-patches/2005-03/msg00238.html

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20303


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [Bug c/20303] Can't push more than 16 nested visibility
  2005-03-03 18:20 [Bug c/20303] New: Can't push more than 16 nested visibility hjl at lucon dot org
                   ` (2 preceding siblings ...)
  2005-03-03 19:19 ` hjl at lucon dot org
@ 2005-03-03 22:58 ` joseph at codesourcery dot com
  2005-03-03 23:00 ` giovannibajo at libero dot it
                   ` (11 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: joseph at codesourcery dot com @ 2005-03-03 22:58 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From joseph at codesourcery dot com  2005-03-03 22:58 -------
Subject: Re:  Can't push more than 16 nested visibility

On Thu, 3 Mar 2005, pinskia at gcc dot gnu dot org wrote:

> This is a documented behavior.

Arbitrary limits are still generally undesirable, even when documented.

Some limits are very unlikely to be reached by real programs, even 
computer-generated ones, and genuinely motivated by efficiency.  For 
example, the C front end only supports 268435455 (= 2^28 - 1) nested 
scopes.  If there were a real use for more scopes, or for a very few 
programs to exceed other such limits motivated by efficiency concerns, we 
could add a --enable-huge-programs configure option to increase those 
limits at some performance cost to almost all normal programs.  Another 
limit in a similar situation is the limit of USHRT_MAX parameters to a 
preprocessor macro.

In this case, the limit is reached by real code and I very much doubt 
(without profiling information to show to the contrary) that there would 
be any measurable performance difference with using VEC, so we should just 
do that and get rid of the limit.



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20303


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [Bug c/20303] Can't push more than 16 nested visibility
  2005-03-03 18:20 [Bug c/20303] New: Can't push more than 16 nested visibility hjl at lucon dot org
                   ` (3 preceding siblings ...)
  2005-03-03 22:58 ` joseph at codesourcery dot com
@ 2005-03-03 23:00 ` giovannibajo at libero dot it
  2005-04-05 18:41 ` hjl at lucon dot org
                   ` (10 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: giovannibajo at libero dot it @ 2005-03-03 23:00 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From giovannibajo at libero dot it  2005-03-03 23:00 -------
(In reply to comment #4)

I strongly agree with everything in JSM's post. There is simply no reason for 
keeping such a stupid limit, and even less for manually optimizing conditions 
to enhance the limit. Using a VEC is more than enough for this case.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|                            |1
   Last reconfirmed|0000-00-00 00:00:00         |2005-03-03 23:00:45
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20303


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [Bug c/20303] Can't push more than 16 nested visibility
  2005-03-03 18:20 [Bug c/20303] New: Can't push more than 16 nested visibility hjl at lucon dot org
                   ` (4 preceding siblings ...)
  2005-03-03 23:00 ` giovannibajo at libero dot it
@ 2005-04-05 18:41 ` hjl at lucon dot org
  2005-05-30 18:51 ` cvs-commit at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: hjl at lucon dot org @ 2005-04-05 18:41 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From hjl at lucon dot org  2005-04-05 18:36 -------
A new patch is posted at

http://gcc.gnu.org/ml/gcc-patches/2005-04/msg00567.html

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20303


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [Bug c/20303] Can't push more than 16 nested visibility
  2005-03-03 18:20 [Bug c/20303] New: Can't push more than 16 nested visibility hjl at lucon dot org
                   ` (5 preceding siblings ...)
  2005-04-05 18:41 ` hjl at lucon dot org
@ 2005-05-30 18:51 ` cvs-commit at gcc dot gnu dot org
  2005-05-30 18:52 ` hjl at lucon dot org
                   ` (8 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2005-05-30 18:51 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-05-30 18:49 -------
Subject: Bug 20303

CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	hjl@gcc.gnu.org	2005-05-30 18:49:04

Modified files:
	gcc            : ChangeLog c-pragma.c 
	gcc/doc        : invoke.texi 

Log message:
	2005-05-30  H.J. Lu  <hongjiu.lu@intel.com>
	
	PR middle-end/20303
	* c-pragma.c: Include "vec.h".
	(handle_pragma_visibility): Use VEC.
	
	* doc/invoke.texi: Remove the nested visibility push limit.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.8947&r2=2.8948
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/c-pragma.c.diff?cvsroot=gcc&r1=1.85&r2=1.86
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/doc/invoke.texi.diff?cvsroot=gcc&r1=1.626&r2=1.627



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20303


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [Bug c/20303] Can't push more than 16 nested visibility
  2005-03-03 18:20 [Bug c/20303] New: Can't push more than 16 nested visibility hjl at lucon dot org
                   ` (6 preceding siblings ...)
  2005-05-30 18:51 ` cvs-commit at gcc dot gnu dot org
@ 2005-05-30 18:52 ` hjl at lucon dot org
  2005-05-30 18:53 ` hjl at lucon dot org
                   ` (7 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: hjl at lucon dot org @ 2005-05-30 18:52 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From hjl at lucon dot org  2005-05-30 18:51 -------
Fixed on mainline.

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20303


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [Bug c/20303] Can't push more than 16 nested visibility
  2005-03-03 18:20 [Bug c/20303] New: Can't push more than 16 nested visibility hjl at lucon dot org
                   ` (7 preceding siblings ...)
  2005-05-30 18:52 ` hjl at lucon dot org
@ 2005-05-30 18:53 ` hjl at lucon dot org
  2005-05-30 18:56 ` pinskia at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: hjl at lucon dot org @ 2005-05-30 18:53 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From hjl at lucon dot org  2005-05-30 18:52 -------
Fixed on mainline.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20303


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [Bug c/20303] Can't push more than 16 nested visibility
  2005-03-03 18:20 [Bug c/20303] New: Can't push more than 16 nested visibility hjl at lucon dot org
                   ` (8 preceding siblings ...)
  2005-05-30 18:53 ` hjl at lucon dot org
@ 2005-05-30 18:56 ` pinskia at gcc dot gnu dot org
  2005-07-14 15:37 ` jakub at redhat dot com
                   ` (5 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-05-30 18:56 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |4.1.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20303


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [Bug c/20303] Can't push more than 16 nested visibility
  2005-03-03 18:20 [Bug c/20303] New: Can't push more than 16 nested visibility hjl at lucon dot org
                   ` (9 preceding siblings ...)
  2005-05-30 18:56 ` pinskia at gcc dot gnu dot org
@ 2005-07-14 15:37 ` jakub at redhat dot com
  2005-07-14 17:25 ` [Bug c/20303] [4.0 only] " hjl at lucon dot org
                   ` (4 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: jakub at redhat dot com @ 2005-07-14 15:37 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From jakub at redhat dot com  2005-07-14 15:33 -------
Any reason why this hasn't been fixed on gcc-4_0-branch as well?

-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20303


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [Bug c/20303] [4.0 only] Can't push more than 16 nested visibility
  2005-03-03 18:20 [Bug c/20303] New: Can't push more than 16 nested visibility hjl at lucon dot org
                   ` (10 preceding siblings ...)
  2005-07-14 15:37 ` jakub at redhat dot com
@ 2005-07-14 17:25 ` hjl at lucon dot org
  2005-07-14 17:36 ` hjl at lucon dot org
                   ` (3 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: hjl at lucon dot org @ 2005-07-14 17:25 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From hjl at lucon dot org  2005-07-14 17:25 -------
A patch for gcc 4.0 is posted at

http://gcc.gnu.org/ml/gcc-patches/2005-07/msg00994.html

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|RESOLVED                    |REOPENED
         Resolution|FIXED                       |
            Summary|Can't push more than 16     |[4.0 only] Can't push more
                   |nested visibility           |than 16 nested visibility


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20303


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [Bug c/20303] [4.0 only] Can't push more than 16 nested visibility
  2005-03-03 18:20 [Bug c/20303] New: Can't push more than 16 nested visibility hjl at lucon dot org
                   ` (11 preceding siblings ...)
  2005-07-14 17:25 ` [Bug c/20303] [4.0 only] " hjl at lucon dot org
@ 2005-07-14 17:36 ` hjl at lucon dot org
  2005-07-15 21:52 ` pinskia at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  15 siblings, 0 replies; 17+ messages in thread
From: hjl at lucon dot org @ 2005-07-14 17:36 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.1.0                       |4.0.2


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20303


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [Bug c/20303] [4.0 only] Can't push more than 16 nested visibility
  2005-03-03 18:20 [Bug c/20303] New: Can't push more than 16 nested visibility hjl at lucon dot org
                   ` (12 preceding siblings ...)
  2005-07-14 17:36 ` hjl at lucon dot org
@ 2005-07-15 21:52 ` pinskia at gcc dot gnu dot org
  2005-07-25  7:46 ` cvs-commit at gcc dot gnu dot org
  2005-09-27 16:15 ` mmitchel at gcc dot gnu dot org
  15 siblings, 0 replies; 17+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-07-15 21:52 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|REOPENED                    |NEW


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20303


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [Bug c/20303] [4.0 only] Can't push more than 16 nested visibility
  2005-03-03 18:20 [Bug c/20303] New: Can't push more than 16 nested visibility hjl at lucon dot org
                   ` (13 preceding siblings ...)
  2005-07-15 21:52 ` pinskia at gcc dot gnu dot org
@ 2005-07-25  7:46 ` cvs-commit at gcc dot gnu dot org
  2005-09-27 16:15 ` mmitchel at gcc dot gnu dot org
  15 siblings, 0 replies; 17+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2005-07-25  7:46 UTC (permalink / raw)
  To: gcc-bugs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-07-25 07:39 -------
Subject: Bug 20303

CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	jakub@gcc.gnu.org	2005-07-25 07:38:58

Modified files:
	gcc/testsuite  : ChangeLog 
Added files:
	gcc/testsuite/gcc.dg: visibility-d.c 

Log message:
	PR middle-end/20303
	* gcc.dg/visibility-d.c: New test.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.5812&r2=1.5813
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gcc.dg/visibility-d.c.diff?cvsroot=gcc&r1=NONE&r2=1.1



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20303


^ permalink raw reply	[flat|nested] 17+ messages in thread

* [Bug c/20303] [4.0 only] Can't push more than 16 nested visibility
  2005-03-03 18:20 [Bug c/20303] New: Can't push more than 16 nested visibility hjl at lucon dot org
                   ` (14 preceding siblings ...)
  2005-07-25  7:46 ` cvs-commit at gcc dot gnu dot org
@ 2005-09-27 16:15 ` mmitchel at gcc dot gnu dot org
  15 siblings, 0 replies; 17+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2005-09-27 16:15 UTC (permalink / raw)
  To: gcc-bugs



-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|4.0.2                       |4.0.3


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20303


^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2005-09-27 16:15 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-03-03 18:20 [Bug c/20303] New: Can't push more than 16 nested visibility hjl at lucon dot org
2005-03-03 18:43 ` [Bug c/20303] " pinskia at gcc dot gnu dot org
2005-03-03 18:47 ` hjl at lucon dot org
2005-03-03 19:19 ` hjl at lucon dot org
2005-03-03 22:58 ` joseph at codesourcery dot com
2005-03-03 23:00 ` giovannibajo at libero dot it
2005-04-05 18:41 ` hjl at lucon dot org
2005-05-30 18:51 ` cvs-commit at gcc dot gnu dot org
2005-05-30 18:52 ` hjl at lucon dot org
2005-05-30 18:53 ` hjl at lucon dot org
2005-05-30 18:56 ` pinskia at gcc dot gnu dot org
2005-07-14 15:37 ` jakub at redhat dot com
2005-07-14 17:25 ` [Bug c/20303] [4.0 only] " hjl at lucon dot org
2005-07-14 17:36 ` hjl at lucon dot org
2005-07-15 21:52 ` pinskia at gcc dot gnu dot org
2005-07-25  7:46 ` cvs-commit at gcc dot gnu dot org
2005-09-27 16:15 ` mmitchel at gcc dot gnu dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).