public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug debug/48176] New: .debug_aranges is no longer emitted
@ 2011-03-18 6:09 jan.kratochvil at redhat dot com
2011-03-18 6:35 ` [Bug debug/48176] " pinskia at gcc dot gnu.org
` (16 more replies)
0 siblings, 17 replies; 18+ messages in thread
From: jan.kratochvil at redhat dot com @ 2011-03-18 6:09 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48176
Summary: .debug_aranges is no longer emitted
Product: gcc
Version: 4.6.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: debug
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: jan.kratochvil@redhat.com
Target: x86_64-unknown-linux-gnu
echo 'main(){}' | gcc -x c - -g; readelf -WS a.out | grep debug_aranges
PASS - exists - gcc (GCC) 4.5.3 20110318 (prerelease)
FAIL - does not exist - gcc (GCC) 4.7.0 20110318 (experimental)
elfutils relies on it:
https://bugzilla.redhat.com/show_bug.cgi?id=688532
Although GDB has never relied on it so there was a suggestion it could be
dropped in the favor of .gdb_index (generated and used by GDB itself).
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug debug/48176] .debug_aranges is no longer emitted
2011-03-18 6:09 [Bug debug/48176] New: .debug_aranges is no longer emitted jan.kratochvil at redhat dot com
@ 2011-03-18 6:35 ` pinskia at gcc dot gnu.org
2011-03-18 8:00 ` jan.kratochvil at redhat dot com
` (15 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: pinskia at gcc dot gnu.org @ 2011-03-18 6:35 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48176
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> 2011-03-18 06:17:20 UTC ---
Hmm, maybe because the section would be empty, see PR 42288.
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug debug/48176] .debug_aranges is no longer emitted
2011-03-18 6:09 [Bug debug/48176] New: .debug_aranges is no longer emitted jan.kratochvil at redhat dot com
2011-03-18 6:35 ` [Bug debug/48176] " pinskia at gcc dot gnu.org
@ 2011-03-18 8:00 ` jan.kratochvil at redhat dot com
2011-03-18 8:43 ` rguenth at gcc dot gnu.org
` (14 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: jan.kratochvil at redhat dot com @ 2011-03-18 8:00 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48176
Jan Kratochvil <jan.kratochvil at redhat dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |tromey at redhat dot com
--- Comment #2 from Jan Kratochvil <jan.kratochvil at redhat dot com> 2011-03-18 06:41:12 UTC ---
PR 42288 was for GDB and it can be closed I think.
I do not see why .debug_aranges would be empty - it contains valid information
with gcc-4.5 and even non-trivial such as with multiple CUs:
echo 'f(){}' | gcc -x c - -o 1.o -c -g; echo 'main(){}' | gcc 1.o -x c - -g;
readelf -WS a.out | grep debug_aranges
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug debug/48176] .debug_aranges is no longer emitted
2011-03-18 6:09 [Bug debug/48176] New: .debug_aranges is no longer emitted jan.kratochvil at redhat dot com
2011-03-18 6:35 ` [Bug debug/48176] " pinskia at gcc dot gnu.org
2011-03-18 8:00 ` jan.kratochvil at redhat dot com
@ 2011-03-18 8:43 ` rguenth at gcc dot gnu.org
2011-03-18 8:53 ` jakub at gcc dot gnu.org
` (13 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: rguenth at gcc dot gnu.org @ 2011-03-18 8:43 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48176
--- Comment #3 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-03-18 08:38:39 UTC ---
elfutils should be more forgiving
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug debug/48176] .debug_aranges is no longer emitted
2011-03-18 6:09 [Bug debug/48176] New: .debug_aranges is no longer emitted jan.kratochvil at redhat dot com
` (2 preceding siblings ...)
2011-03-18 8:43 ` rguenth at gcc dot gnu.org
@ 2011-03-18 8:53 ` jakub at gcc dot gnu.org
2011-03-18 9:01 ` jakub at gcc dot gnu.org
` (12 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: jakub at gcc dot gnu.org @ 2011-03-18 8:53 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48176
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jakub at gcc dot gnu.org
--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-03-18 08:43:35 UTC ---
See PR46704.
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug debug/48176] .debug_aranges is no longer emitted
2011-03-18 6:09 [Bug debug/48176] New: .debug_aranges is no longer emitted jan.kratochvil at redhat dot com
` (3 preceding siblings ...)
2011-03-18 8:53 ` jakub at gcc dot gnu.org
@ 2011-03-18 9:01 ` jakub at gcc dot gnu.org
2011-03-18 9:04 ` [Bug debug/48176] [4.6/4.7 Regression] " jakub at gcc dot gnu.org
` (11 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: jakub at gcc dot gnu.org @ 2011-03-18 9:01 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48176
--- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-03-18 09:00:59 UTC ---
I believe Eric's change was wrong actually, .debug_aranges section has useful
content even when !arange_table_in_use. In particular, it describes .text and
.text.unlikely sections.
So IMHO we want:
--- gcc/dwarf2out.c2011-03-17 12:54:51.000000000 +0100
+++ gcc/dwarf2out.c2011-03-18 09:58:06.010366417 +0100
@@ -23664,7 +23664,7 @@ dwarf2out_finish (const char *filename)
/* Output the address range information. We only put functions in the
arange
table, so don't write it out if we don't have any. */
- if (arange_table_in_use)
+ if (arange_table_in_use || text_section_used || cold_text_section_used)
{
switch_to_section (debug_aranges_section);
output_aranges ();
I assume .debug_aranges isn't useful when no code has been emitted and after
all, we haven't been emitting it before either. I'm unsure when exactly
would be fde_table_in_use different from
arange_table_in_use || text_section_used || cold_text_section_used
though.
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug debug/48176] [4.6/4.7 Regression] .debug_aranges is no longer emitted
2011-03-18 6:09 [Bug debug/48176] New: .debug_aranges is no longer emitted jan.kratochvil at redhat dot com
` (4 preceding siblings ...)
2011-03-18 9:01 ` jakub at gcc dot gnu.org
@ 2011-03-18 9:04 ` jakub at gcc dot gnu.org
2011-03-18 9:18 ` jakub at gcc dot gnu.org
` (10 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: jakub at gcc dot gnu.org @ 2011-03-18 9:04 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48176
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2011.03.18 09:01:37
Target Milestone|--- |4.6.0
Summary|.debug_aranges is no longer |[4.6/4.7 Regression]
|emitted |.debug_aranges is no longer
| |emitted
Ever Confirmed|0 |1
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug debug/48176] [4.6/4.7 Regression] .debug_aranges is no longer emitted
2011-03-18 6:09 [Bug debug/48176] New: .debug_aranges is no longer emitted jan.kratochvil at redhat dot com
` (5 preceding siblings ...)
2011-03-18 9:04 ` [Bug debug/48176] [4.6/4.7 Regression] " jakub at gcc dot gnu.org
@ 2011-03-18 9:18 ` jakub at gcc dot gnu.org
2011-03-18 9:28 ` jakub at gcc dot gnu.org
` (9 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: jakub at gcc dot gnu.org @ 2011-03-18 9:18 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48176
--- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-03-18 09:08:41 UTC ---
And the PR42288 variant would be
if (info_section_emitted)
{
switch_to_section (debug_aranges_section);
output_aranges ();
}
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug debug/48176] [4.6/4.7 Regression] .debug_aranges is no longer emitted
2011-03-18 6:09 [Bug debug/48176] New: .debug_aranges is no longer emitted jan.kratochvil at redhat dot com
` (6 preceding siblings ...)
2011-03-18 9:18 ` jakub at gcc dot gnu.org
@ 2011-03-18 9:28 ` jakub at gcc dot gnu.org
2011-03-18 9:35 ` jakub at gcc dot gnu.org
` (8 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: jakub at gcc dot gnu.org @ 2011-03-18 9:28 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48176
--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-03-18 09:20:37 UTC ---
I've tried a-charac.ads and fde_table_in_use is 0 in that case, so I wonder how
the PR46704 patch could stop emitting .debug_aranges in that case (unless there
was some bug that has been fixed since then).
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug debug/48176] [4.6/4.7 Regression] .debug_aranges is no longer emitted
2011-03-18 6:09 [Bug debug/48176] New: .debug_aranges is no longer emitted jan.kratochvil at redhat dot com
` (7 preceding siblings ...)
2011-03-18 9:28 ` jakub at gcc dot gnu.org
@ 2011-03-18 9:35 ` jakub at gcc dot gnu.org
2011-03-18 9:46 ` ebotcazou at gcc dot gnu.org
` (7 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: jakub at gcc dot gnu.org @ 2011-03-18 9:35 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48176
--- Comment #8 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-03-18 09:32:13 UTC ---
If we want to be extra safe (and for 4.6 we need to be), I think
if (fde_table_in_use && info_section_emitted)
or
if ((arange_table_in_use || text_section_used || cold_text_section_used)
&& info_section_emitted)
are the conditions to use. I think I prefer the latter, which is more explicit
on what it is testing, in particular output only if there will be any aranges
within the section actually emitted, and when there is a .Ldebug_info0 to point
the aranges to.
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug debug/48176] [4.6/4.7 Regression] .debug_aranges is no longer emitted
2011-03-18 6:09 [Bug debug/48176] New: .debug_aranges is no longer emitted jan.kratochvil at redhat dot com
` (8 preceding siblings ...)
2011-03-18 9:35 ` jakub at gcc dot gnu.org
@ 2011-03-18 9:46 ` ebotcazou at gcc dot gnu.org
2011-03-18 9:48 ` jakub at gcc dot gnu.org
` (6 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: ebotcazou at gcc dot gnu.org @ 2011-03-18 9:46 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48176
--- Comment #9 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2011-03-18 09:34:48 UTC ---
> I've tried a-charac.ads and fde_table_in_use is 0 in that case, so I wonder how
> the PR46704 patch could stop emitting .debug_aranges in that case (unless there
> was some bug that has been fixed since then).
You need to compile with -fkeep-inline-functions.
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug debug/48176] [4.6/4.7 Regression] .debug_aranges is no longer emitted
2011-03-18 6:09 [Bug debug/48176] New: .debug_aranges is no longer emitted jan.kratochvil at redhat dot com
` (9 preceding siblings ...)
2011-03-18 9:46 ` ebotcazou at gcc dot gnu.org
@ 2011-03-18 9:48 ` jakub at gcc dot gnu.org
2011-03-18 9:57 ` ebotcazou at gcc dot gnu.org
` (5 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: jakub at gcc dot gnu.org @ 2011-03-18 9:48 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48176
--- Comment #10 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-03-18 09:45:45 UTC ---
Thanks, I see. fde_table_in_use is 2 then, arange_table_in_use is 0,
text_section_used 0 and cold_text_section_used 0. So, the #c5 and both #c8
alternatives would fix this issue and not reintroduce the problem with
a-charac.ads -O2 -g -fkeep-inline-functions.
The only two functions in that CU are DECL_IGNORED, so begin_function debug
hook isn't called for them, just begin_prologue, and as the CU is empty
(DECL_IGNORED function are ignored for debug info) .debug_info isn't emitted
either.
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug debug/48176] [4.6/4.7 Regression] .debug_aranges is no longer emitted
2011-03-18 6:09 [Bug debug/48176] New: .debug_aranges is no longer emitted jan.kratochvil at redhat dot com
` (10 preceding siblings ...)
2011-03-18 9:48 ` jakub at gcc dot gnu.org
@ 2011-03-18 9:57 ` ebotcazou at gcc dot gnu.org
2011-03-18 10:00 ` jakub at gcc dot gnu.org
` (4 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: ebotcazou at gcc dot gnu.org @ 2011-03-18 9:57 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48176
--- Comment #11 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2011-03-18 09:51:26 UTC ---
> Thanks, I see. fde_table_in_use is 2 then, arange_table_in_use is 0,
> text_section_used 0 and cold_text_section_used 0. So, the #c5 and both #c8
> alternatives would fix this issue and not reintroduce the problem with
> a-charac.ads -O2 -g -fkeep-inline-functions.
What about testing ranges_by_label_in_use instead?
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug debug/48176] [4.6/4.7 Regression] .debug_aranges is no longer emitted
2011-03-18 6:09 [Bug debug/48176] New: .debug_aranges is no longer emitted jan.kratochvil at redhat dot com
` (11 preceding siblings ...)
2011-03-18 9:57 ` ebotcazou at gcc dot gnu.org
@ 2011-03-18 10:00 ` jakub at gcc dot gnu.org
2011-03-18 10:34 ` ebotcazou at gcc dot gnu.org
` (3 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: jakub at gcc dot gnu.org @ 2011-03-18 10:00 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48176
--- Comment #12 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-03-18 09:56:33 UTC ---
That is related to .debug_ranges, not .debug_aranges.
E.g. in the int main () { return 0; } case ranges_by_label_in_use is 0, not
surprisingly, we don't emit .debug_ranges in that case. .debug_ranges is only
needed if some function or lexical block or inlined function doesn't have a
single range, but multiple ones.
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug debug/48176] [4.6/4.7 Regression] .debug_aranges is no longer emitted
2011-03-18 6:09 [Bug debug/48176] New: .debug_aranges is no longer emitted jan.kratochvil at redhat dot com
` (12 preceding siblings ...)
2011-03-18 10:00 ` jakub at gcc dot gnu.org
@ 2011-03-18 10:34 ` ebotcazou at gcc dot gnu.org
2011-03-18 16:22 ` jakub at gcc dot gnu.org
` (2 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: ebotcazou at gcc dot gnu.org @ 2011-03-18 10:34 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48176
--- Comment #13 from Eric Botcazou <ebotcazou at gcc dot gnu.org> 2011-03-18 10:05:32 UTC ---
> That is related to .debug_ranges, not .debug_aranges.
Ah, OK. Your solution:
(arange_table_in_use || text_section_used || cold_text_section_used)
seems indeed to be the best one, you might even want to write it as:
(text_section_used || cold_text_section_used || arange_table_in_use)
to match the layout of output_aranges. Thanks for debugging this.
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug debug/48176] [4.6/4.7 Regression] .debug_aranges is no longer emitted
2011-03-18 6:09 [Bug debug/48176] New: .debug_aranges is no longer emitted jan.kratochvil at redhat dot com
` (13 preceding siblings ...)
2011-03-18 10:34 ` ebotcazou at gcc dot gnu.org
@ 2011-03-18 16:22 ` jakub at gcc dot gnu.org
2011-03-18 16:25 ` jakub at gcc dot gnu.org
2011-03-18 19:33 ` jakub at gcc dot gnu.org
16 siblings, 0 replies; 18+ messages in thread
From: jakub at gcc dot gnu.org @ 2011-03-18 16:22 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48176
--- Comment #14 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-03-18 16:18:12 UTC ---
Author: jakub
Date: Fri Mar 18 16:18:05 2011
New Revision: 171150
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=171150
Log:
PR debug/48176
* dwarf2out.c (dwarf2out_finish): Call output_aranges even when
arange_table_in_use is 0, but either text_section_used or
cold_text_section_used is true. Don't call it if
!info_section_emitted.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/dwarf2out.c
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug debug/48176] [4.6/4.7 Regression] .debug_aranges is no longer emitted
2011-03-18 6:09 [Bug debug/48176] New: .debug_aranges is no longer emitted jan.kratochvil at redhat dot com
` (14 preceding siblings ...)
2011-03-18 16:22 ` jakub at gcc dot gnu.org
@ 2011-03-18 16:25 ` jakub at gcc dot gnu.org
2011-03-18 19:33 ` jakub at gcc dot gnu.org
16 siblings, 0 replies; 18+ messages in thread
From: jakub at gcc dot gnu.org @ 2011-03-18 16:25 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48176
--- Comment #15 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-03-18 16:22:10 UTC ---
Author: jakub
Date: Fri Mar 18 16:22:01 2011
New Revision: 171151
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=171151
Log:
PR debug/48176
* dwarf2out.c (dwarf2out_finish): Call output_aranges even when
arange_table_in_use is 0, but either text_section_used or
cold_text_section_used is true. Don't call it if
!info_section_emitted.
Modified:
branches/gcc-4_6-branch/gcc/ChangeLog
branches/gcc-4_6-branch/gcc/dwarf2out.c
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug debug/48176] [4.6/4.7 Regression] .debug_aranges is no longer emitted
2011-03-18 6:09 [Bug debug/48176] New: .debug_aranges is no longer emitted jan.kratochvil at redhat dot com
` (15 preceding siblings ...)
2011-03-18 16:25 ` jakub at gcc dot gnu.org
@ 2011-03-18 19:33 ` jakub at gcc dot gnu.org
16 siblings, 0 replies; 18+ messages in thread
From: jakub at gcc dot gnu.org @ 2011-03-18 19:33 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48176
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
--- Comment #16 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-03-18 19:11:54 UTC ---
Fixed.
^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2011-03-18 19:12 UTC | newest]
Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-03-18 6:09 [Bug debug/48176] New: .debug_aranges is no longer emitted jan.kratochvil at redhat dot com
2011-03-18 6:35 ` [Bug debug/48176] " pinskia at gcc dot gnu.org
2011-03-18 8:00 ` jan.kratochvil at redhat dot com
2011-03-18 8:43 ` rguenth at gcc dot gnu.org
2011-03-18 8:53 ` jakub at gcc dot gnu.org
2011-03-18 9:01 ` jakub at gcc dot gnu.org
2011-03-18 9:04 ` [Bug debug/48176] [4.6/4.7 Regression] " jakub at gcc dot gnu.org
2011-03-18 9:18 ` jakub at gcc dot gnu.org
2011-03-18 9:28 ` jakub at gcc dot gnu.org
2011-03-18 9:35 ` jakub at gcc dot gnu.org
2011-03-18 9:46 ` ebotcazou at gcc dot gnu.org
2011-03-18 9:48 ` jakub at gcc dot gnu.org
2011-03-18 9:57 ` ebotcazou at gcc dot gnu.org
2011-03-18 10:00 ` jakub at gcc dot gnu.org
2011-03-18 10:34 ` ebotcazou at gcc dot gnu.org
2011-03-18 16:22 ` jakub at gcc dot gnu.org
2011-03-18 16:25 ` jakub at gcc dot gnu.org
2011-03-18 19:33 ` jakub at gcc dot gnu.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).