summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2001-01-14 04:55:34 +0000
committerJarkko Hietaniemi <jhi@iki.fi>2001-01-14 04:55:34 +0000
commit78d8f6e05211de1a60b4bb9b795b8ff72f179ebe (patch)
tree3de95674ac2df6eb32eabcb77baeddc6c794e53c
parented7a760fef4dab277d3d0e5f853210f001d70171 (diff)
downloadperl-78d8f6e05211de1a60b4bb9b795b8ff72f179ebe.tar.gz
(Reverted by #8440)
Add <features.h> probing, seems to be needed for (some?) Linux largefileness. p4raw-id: //depot/perl@8437
-rwxr-xr-xConfigure16
-rw-r--r--Porting/Glossary4
-rw-r--r--Porting/config.sh5
-rw-r--r--Porting/config_H8
-rw-r--r--config_h.SH6
-rw-r--r--configure.com1
-rw-r--r--epoc/config.sh1
-rw-r--r--perl.h4
-rw-r--r--pod/perltoc.pod130
-rw-r--r--uconfig.h6
-rwxr-xr-xuconfig.sh1
-rw-r--r--vos/config.alpha.def1
-rw-r--r--vos/config.alpha.h6
-rw-r--r--vos/config.ga.def1
-rw-r--r--vos/config.ga.h6
-rw-r--r--win32/config.bc1
-rw-r--r--win32/config.gc1
-rw-r--r--win32/config.vc1
18 files changed, 159 insertions, 40 deletions
diff --git a/Configure b/Configure
index 3e845c5f96..ea2b060ea5 100755
--- a/Configure
+++ b/Configure
@@ -20,7 +20,7 @@
# $Id: Head.U,v 3.0.1.9 1997/02/28 15:02:09 ram Exp $
#
-# Generated on Fri Jan 12 22:28:01 EET 2001 [metaconfig 3.0 PL70]
+# Generated on Sun Jan 14 06:37:36 EET 2001 [metaconfig 3.0 PL70]
# (with additional metaconfig patches by perlbug@perl.org)
cat >c1$$ <<EOF
@@ -631,6 +631,7 @@ i_dirent=''
i_dld=''
i_dlfcn=''
i_fcntl=''
+i_features=''
i_float=''
i_gdbm=''
d_grpasswd=''
@@ -9303,11 +9304,19 @@ eval $inlibc
set fpathconf d_fpathconf
eval $inlibc
+: see if this is a features.h system
+set features.h i_features
+eval $inhdr
+
: check for fpos64_t
echo " "
echo "Checking to see if you have fpos64_t..." >&4
$cat >try.c <<EOCP
+#$i_features I_FEATURES
+#ifdef I_FEATURES
+#include <features.h>
+#endif
#include <stdio.h>
int main() { fpos64_t x = 7; }
EOCP
@@ -10501,6 +10510,10 @@ $rm -f try.* try
echo " "
echo "Checking to see if you have off64_t..." >&4
$cat >try.c <<EOCP
+#$i_features I_FEATURES
+#ifdef I_FEATURES
+#include <features.h>
+#endif
#include <sys/types.h>
#include <unistd.h>
int main() { off64_t x = 7; }
@@ -16211,6 +16224,7 @@ i_dirent='$i_dirent'
i_dld='$i_dld'
i_dlfcn='$i_dlfcn'
i_fcntl='$i_fcntl'
+i_features='$i_features'
i_float='$i_float'
i_gdbm='$i_gdbm'
i_grp='$i_grp'
diff --git a/Porting/Glossary b/Porting/Glossary
index 5800202e69..4c6f81f14d 100644
--- a/Porting/Glossary
+++ b/Porting/Glossary
@@ -2013,6 +2013,10 @@ i_fcntl (i_fcntl.U):
This variable controls the value of I_FCNTL (which tells
the C program to include <fcntl.h>).
+i_features (i_features.U):
+ This variable conditionally defines the I_FEATURES symbol,
+ and indicates whether a C program should include <features.h>.
+
i_float (i_float.U):
This variable conditionally defines the I_FLOAT symbol, and indicates
whether a C program may include <float.h> to get symbols like DBL_MAX
diff --git a/Porting/config.sh b/Porting/config.sh
index 1f362530ee..64b6d485ca 100644
--- a/Porting/config.sh
+++ b/Porting/config.sh
@@ -8,7 +8,7 @@
# Package name : perl5
# Source directory : .
-# Configuration time: Fri Jan 12 22:32:53 EET 2001
+# Configuration time: Sun Jan 14 06:47:38 EET 2001
# Configured by : jhi
# Target system : osf1 alpha.hut.fi v4.0 878 alpha
@@ -62,7 +62,7 @@ ccsymbols='__alpha=1 __LANGUAGE_C__=1 __osf__=1 __unix__=1 _LONGLONG=1 _SYSTYPE_
ccversion='V5.6-082'
cf_by='jhi'
cf_email='yourname@yourhost.yourplace.com'
-cf_time='Fri Jan 12 22:32:53 EET 2001'
+cf_time='Sun Jan 14 06:47:38 EET 2001'
charsize='1'
chgrp=''
chmod=''
@@ -455,6 +455,7 @@ i_dirent='define'
i_dld='undef'
i_dlfcn='define'
i_fcntl='undef'
+i_features='undef'
i_float='define'
i_gdbm='undef'
i_grp='define'
diff --git a/Porting/config_H b/Porting/config_H
index 9f615857c9..ea4f3648cb 100644
--- a/Porting/config_H
+++ b/Porting/config_H
@@ -17,7 +17,7 @@
/*
* Package name : perl5
* Source directory : .
- * Configuration time: Fri Jan 12 22:32:53 EET 2001
+ * Configuration time: Sun Jan 14 06:47:38 EET 2001
* Configured by : jhi
* Target system : osf1 alpha.hut.fi v4.0 878 alpha
*/
@@ -3249,4 +3249,10 @@
*/
#define HAS_SIGPROCMASK /**/
+/* I_FEATURES:
+ * This symbol, if defined, indicates that <features.h> exists and
+ * should be included.
+ */
+/*#define I_FEATURES / **/
+
#endif
diff --git a/config_h.SH b/config_h.SH
index 8a3f4dfcf8..9aacdcc9f3 100644
--- a/config_h.SH
+++ b/config_h.SH
@@ -3269,5 +3269,11 @@ sed <<!GROK!THIS! >$CONFIG_H -e 's!^#undef\(.*/\)\*!/\*#define\1 \*!' -e 's!^#un
*/
#$d_sigprocmask HAS_SIGPROCMASK /**/
+/* I_FEATURES:
+ * This symbol, if defined, indicates that <features.h> exists and
+ * should be included.
+ */
+#$i_features I_FEATURES /**/
+
#endif
!GROK!THIS!
diff --git a/configure.com b/configure.com
index 7a58a2a23f..bcc9e12ad4 100644
--- a/configure.com
+++ b/configure.com
@@ -5210,6 +5210,7 @@ $ WC "i_dbm='undef'"
$ WC "i_dirent='" + i_dirent + "'"
$ WC "i_dlfcn='undef'"
$ WC "i_fcntl='" + i_fcntl + "'"
+$ WC "i_features='undef'"
$ WC "i_float='define'"
$ WC "i_grp='undef'"
$ WC "i_iconv='" + i_iconv +"'"
diff --git a/epoc/config.sh b/epoc/config.sh
index 36bfc89688..992f8346dd 100644
--- a/epoc/config.sh
+++ b/epoc/config.sh
@@ -426,6 +426,7 @@ i_dirent='define'
i_dld='undef'
i_dlfcn='undef'
i_fcntl='define'
+i_features='undef'
i_float='undef'
i_gdbm='undef'
i_grp='undef'
diff --git a/perl.h b/perl.h
index 19827a3101..5896db9ae0 100644
--- a/perl.h
+++ b/perl.h
@@ -425,6 +425,10 @@ register struct op *Perl_op asm(stringify(OP_IN_REGISTER));
# include <pthread.h>
#endif
+#ifdef I_FEATURES
+# include <features.h>
+#endif
+
#ifndef _TYPES_ /* If types.h defines this it's easy. */
# ifndef major /* Does everyone's types.h define this? */
# include <sys/types.h>
diff --git a/pod/perltoc.pod b/pod/perltoc.pod
index 7be2b87226..fd5a00f3ac 100644
--- a/pod/perltoc.pod
+++ b/pod/perltoc.pod
@@ -2181,20 +2181,21 @@ chcp, dataset access, OS/390 iconv, locales
attributes, attrs, autouse, base, blib, bytes, charnames, constant,
diagnostics, fields, filetest, integer, less, locale, open, ops, overload,
-perlio, re, sigtrap, strict, subs, utf8, vars, warnings, warnings::register
+perlio, re, sigtrap, strict, subs, unicode::distinct, utf8, vars, warnings,
+warnings::register
=item Standard Modules
AnyDBM_File, AutoLoader, AutoSplit, B, B::Asmdata, B::Assembler, B::Bblock,
-B::Bytecode, B::C, B::CC, B::Debug, B::Deparse, B::Disassembler, B::Lint,
-B::Showlex, B::Stackobj, B::Stash, B::Terse, B::Xref, Benchmark,
-ByteLoader, CGI, CGI::Apache, CGI::Carp, CGI::Cookie, CGI::Fast,
-CGI::Pretty, CGI::Push, CGI::Switch, CPAN, CPAN::FirstTime, CPAN::Nox,
-Carp, Class::Struct, Cwd, DB, DB_File, Devel::SelfStubber, DirHandle,
-Dumpvalue, Encode, English, Env, Exporter, Exporter::Heavy,
-ExtUtils::Command, ExtUtils::Embed, ExtUtils::Install, ExtUtils::Installed,
-ExtUtils::Liblist, ExtUtils::MM_Cygwin, ExtUtils::MM_OS2,
-ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MM_Win32,
+B::Bytecode, B::C, B::CC, B::Concise, B::Debug, B::Deparse,
+B::Disassembler, B::Lint, B::Showlex, B::Stackobj, B::Stash, B::Terse,
+B::Xref, Benchmark, ByteLoader, CGI, CGI::Apache, CGI::Carp, CGI::Cookie,
+CGI::Fast, CGI::Pretty, CGI::Push, CGI::Switch, CPAN, CPAN::FirstTime,
+CPAN::Nox, Carp, Carp::Heavy, Class::Struct, Cwd, DB, DB_File,
+Devel::SelfStubber, DirHandle, Dumpvalue, Encode, English, Env, Exporter,
+Exporter::Heavy, ExtUtils::Command, ExtUtils::Embed, ExtUtils::Install,
+ExtUtils::Installed, ExtUtils::Liblist, ExtUtils::MM_Cygwin,
+ExtUtils::MM_OS2, ExtUtils::MM_Unix, ExtUtils::MM_VMS, ExtUtils::MM_Win32,
ExtUtils::MakeMaker, ExtUtils::Manifest, ExtUtils::Mkbootstrap,
ExtUtils::Mksymlists, ExtUtils::Packlist, ExtUtils::testlib, Fatal, Fcntl,
File::Basename, File::CheckTree, File::Compare, File::Copy, File::DosGlob,
@@ -2207,13 +2208,13 @@ Math::Complex, Math::Trig, NDBM_File, Net::Ping, Net::hostent, Net::netent,
Net::protoent, Net::servent, O, ODBM_File, Opcode, Pod::Checker, Pod::Find,
Pod::Html, Pod::InputObjects, Pod::LaTeX, Pod::Man, Pod::ParseUtils,
Pod::Parser, Pod::Plainer, Pod::Select, Pod::Text, Pod::Text::Color,
-Pod::Text::Termcap, Pod::Usage, SDBM_File, Safe, Search::Dict, SelectSaver,
-SelfLoader, Shell, Socket, Storable, Symbol, Term::ANSIColor, Term::Cap,
-Term::Complete, Term::ReadLine, Test, Test::Harness, Text::Abbrev,
-Text::ParseWords, Text::Soundex, Text::Wrap, Tie::Array, Tie::Handle,
-Tie::Hash, Tie::RefHash, Tie::Scalar, Tie::SubstrHash, Time::Local,
-Time::gmtime, Time::localtime, Time::tm, UNIVERSAL, User::grent,
-User::pwent
+Pod::Text::Overstrike, Pod::Text::Termcap, Pod::Usage, SDBM_File, Safe,
+Search::Dict, SelectSaver, SelfLoader, Shell, Socket, Storable, Symbol,
+Term::ANSIColor, Term::Cap, Term::Complete, Term::ReadLine, Test,
+Test::Harness, Text::Abbrev, Text::ParseWords, Text::Soundex, Text::Wrap,
+Tie::Array, Tie::Handle, Tie::Hash, Tie::RefHash, Tie::Scalar,
+Tie::SubstrHash, Time::Local, Time::gmtime, Time::localtime, Time::tm,
+UNIVERSAL, User::grent, User::pwent
=item Extension Modules
@@ -2221,8 +2222,20 @@ User::pwent
=item CPAN
-Africa, Asia, Australasia, Central America, Europe, North America, South
-America
+Language Extensions and Documentation Tools, Development Support, Operating
+System Interfaces, Networking, Device Control (modems) and InterProcess
+Communication, Data Types and Data Type Utilities, Database Interfaces,
+User Interfaces, Interfaces to / Emulations of Other Programming Languages,
+File Names, File Systems and File Locking (see also File Handles), String
+Processing, Language Text Processing, Parsing, and Searching, Option,
+Argument, Parameter, and Configuration File Processing,
+Internationalization and Locale, Authentication, Security, and Encryption,
+World Wide Web, HTML, HTTP, CGI, MIME, Server and Daemon Utilities,
+Archiving and Compression, Images, Pixmap and Bitmap Manipulation, Drawing,
+and Graphing, Mail and Usenet News, Control Flow Utilities (callbacks and
+exceptions etc), File Handle and Input/Output Stream Utilities,
+Miscellaneous Modules, Africa, Asia, Australasia, Central America, Europe,
+North America, South America
=item Modules: Creation, Use, and Abuse
@@ -2251,6 +2264,12 @@ to ::, Converts die(...) to croak(...), Several other minor changes
=item Guidelines for Reusing Application Code
+Complete applications rarely belong in the Perl Module Library, Many
+applications contain some Perl code that could be reused, Break-out the
+reusable code into one or more separate module files, Take the opportunity
+to reconsider and redesign the interfaces, In some cases the 'application'
+can then be reduced to a small
+
=back
=item NOTE
@@ -6955,6 +6974,45 @@ B<-ffreetmps-each-bblock>, B<-ffreetmps-each-loop>, B<-fomit-taint>, B<-On>
=back
+=head2 B::Concise - Walk Perl syntax tree, printing concise info about ops
+
+=over 4
+
+=item SYNOPSIS
+
+=item DESCRIPTION
+
+=item OPTIONS
+
+B<-basic>, B<-exec>, B<-tree>, B<-compact>, B<-loose>, B<-vt>, B<-ascii>,
+B<-main>, B<-base>I<n>, B<-bigendian>, B<-littleendian>, B<-concise>,
+B<-terse>, B<-linenoise>, B<-debug>, B<-env>
+
+=item FORMATTING SPECIFICATIONS
+
+B<(x(>I<exec_text>B<;>I<basic_text>B<)x)>, B<(*(>I<text>B<)*)>,
+B<(*(>I<text1>B<;>I<text2>B<)*)>, B<(?(>I<text1>B<#>I<var>I<Text2>B<)?)>,
+B<#>I<var>, B<#>I<var>I<N>, B<~>, B<#addr>, B<#arg>, B<#class>,
+B<#classym>, B<#coplabel>, B<#exname>, B<#extarg>, B<#firstaddr>,
+B<#flags>, B<#flagval>, B<#hyphenseq>, B<#label>, B<#lastaddr>, B<#name>,
+B<#NAME>, B<#next>, B<#nextaddr>, B<#noise>, B<#private>, B<#privval>,
+B<#seq>, B<#seqnum>, B<#sibaddr>, B<#svaddr>, B<#svclass>, B<#svval>,
+B<#targ>, B<#targarg>, B<#targarglife>, B<#typenum>
+
+=item ABBREVIATIONS
+
+=over 4
+
+=item OP flags abbreviations
+
+=item OP class abbreviations
+
+=back
+
+=item AUTHOR
+
+=back
+
=head2 B::Debug - Walk Perl syntax tree, printing debug info about ops
=over 4
@@ -7907,23 +7965,23 @@ C<d_setproctitle>, C<d_setpwent>, C<d_setregid>, C<d_setresgid>,
C<d_setresuid>, C<d_setreuid>, C<d_setrgid>, C<d_setruid>, C<d_setsent>,
C<d_setsid>, C<d_setvbuf>, C<d_sfio>, C<d_shm>, C<d_shmat>,
C<d_shmatprototype>, C<d_shmctl>, C<d_shmdt>, C<d_shmget>, C<d_sigaction>,
-C<d_sigsetjmp>, C<d_socket>, C<d_socklen_t>, C<d_sockpair>,
-C<d_socks5_init>, C<d_sqrtl>, C<d_statblks>, C<d_statfs_f_flags>,
-C<d_statfs_s>, C<d_statvfs>, C<d_stdio_cnt_lval>, C<d_stdio_ptr_lval>,
-C<d_stdio_ptr_lval_nochange_cnt>, C<d_stdio_ptr_lval_sets_cnt>,
-C<d_stdio_stream_array>, C<d_stdiobase>, C<d_stdstdio>, C<d_strchr>,
-C<d_strcoll>, C<d_strctcpy>, C<d_strerrm>, C<d_strerror>, C<d_strtod>,
-C<d_strtol>, C<d_strtold>, C<d_strtoll>, C<d_strtoq>, C<d_strtoul>,
-C<d_strtoull>, C<d_strtouq>, C<d_strxfrm>, C<d_suidsafe>, C<d_symlink>,
-C<d_syscall>, C<d_sysconf>, C<d_sysernlst>, C<d_syserrlst>, C<d_system>,
-C<d_tcgetpgrp>, C<d_tcsetpgrp>, C<d_telldir>, C<d_telldirproto>, C<d_time>,
-C<d_times>, C<d_truncate>, C<d_tzname>, C<d_umask>, C<d_uname>,
-C<d_union_semun>, C<d_ustat>, C<d_vendorarch>, C<d_vendorbin>,
-C<d_vendorlib>, C<d_vfork>, C<d_void_closedir>, C<d_voidsig>, C<d_voidtty>,
-C<d_volatile>, C<d_vprintf>, C<d_wait4>, C<d_waitpid>, C<d_wcstombs>,
-C<d_wctomb>, C<d_xenix>, C<date>, C<db_hashtype>, C<db_prefixtype>,
-C<defvoidused>, C<direntrytype>, C<dlext>, C<dlsrc>, C<doublesize>,
-C<drand01>, C<dynamic_ext>
+C<d_sigprocmask>, C<d_sigsetjmp>, C<d_socket>, C<d_socklen_t>,
+C<d_sockpair>, C<d_socks5_init>, C<d_sqrtl>, C<d_statblks>,
+C<d_statfs_f_flags>, C<d_statfs_s>, C<d_statvfs>, C<d_stdio_cnt_lval>,
+C<d_stdio_ptr_lval>, C<d_stdio_ptr_lval_nochange_cnt>,
+C<d_stdio_ptr_lval_sets_cnt>, C<d_stdio_stream_array>, C<d_stdiobase>,
+C<d_stdstdio>, C<d_strchr>, C<d_strcoll>, C<d_strctcpy>, C<d_strerrm>,
+C<d_strerror>, C<d_strtod>, C<d_strtol>, C<d_strtold>, C<d_strtoll>,
+C<d_strtoq>, C<d_strtoul>, C<d_strtoull>, C<d_strtouq>, C<d_strxfrm>,
+C<d_suidsafe>, C<d_symlink>, C<d_syscall>, C<d_sysconf>, C<d_sysernlst>,
+C<d_syserrlst>, C<d_system>, C<d_tcgetpgrp>, C<d_tcsetpgrp>, C<d_telldir>,
+C<d_telldirproto>, C<d_time>, C<d_times>, C<d_truncate>, C<d_tzname>,
+C<d_umask>, C<d_uname>, C<d_union_semun>, C<d_ustat>, C<d_vendorarch>,
+C<d_vendorbin>, C<d_vendorlib>, C<d_vfork>, C<d_void_closedir>,
+C<d_voidsig>, C<d_voidtty>, C<d_volatile>, C<d_vprintf>, C<d_wait4>,
+C<d_waitpid>, C<d_wcstombs>, C<d_wctomb>, C<d_xenix>, C<date>,
+C<db_hashtype>, C<db_prefixtype>, C<defvoidused>, C<direntrytype>,
+C<dlext>, C<dlsrc>, C<doublesize>, C<drand01>, C<dynamic_ext>
=item e
diff --git a/uconfig.h b/uconfig.h
index 93b7d35696..4ec7cbc24a 100644
--- a/uconfig.h
+++ b/uconfig.h
@@ -3245,4 +3245,10 @@
*/
/*#define HAS_SIGPROCMASK / **/
+/* I_FEATURES:
+ * This symbol, if defined, indicates that <features.h> exists and
+ * should be included.
+ */
+/*#define I_FEATURES / **/
+
#endif
diff --git a/uconfig.sh b/uconfig.sh
index e97222a6d4..048668571a 100755
--- a/uconfig.sh
+++ b/uconfig.sh
@@ -362,6 +362,7 @@ i_dirent='undef'
i_dld='undef'
i_dlfcn='undef'
i_fcntl='undef'
+i_features='undef'
i_float='undef'
i_gdbm='undef'
i_grp='undef'
diff --git a/vos/config.alpha.def b/vos/config.alpha.def
index 1ec2d9167c..af35fbd693 100644
--- a/vos/config.alpha.def
+++ b/vos/config.alpha.def
@@ -319,6 +319,7 @@ $i_dbm='undef'
$i_dirent='define'
$i_dlfcn='undef'
$i_fcntl='define'
+$i_features='undef'
$i_float='define'
$i_grp='define'
$i_iconv='undef'
diff --git a/vos/config.alpha.h b/vos/config.alpha.h
index 7b21420a6d..128aaa6435 100644
--- a/vos/config.alpha.h
+++ b/vos/config.alpha.h
@@ -747,6 +747,12 @@
*/
#define I_FCNTL /**/
+/* I_FEATURES:
+ * This symbol, if defined, indicates that <features.h> exists and should
+ * be included.
+ */
+/*#define I_FEATURES /**/
+
/* I_FLOAT:
* This symbol, if defined, indicates to the C program that it should
* include <float.h> to get definition of symbols like DBL_MAX or
diff --git a/vos/config.ga.def b/vos/config.ga.def
index ab57e08832..72054ec53f 100644
--- a/vos/config.ga.def
+++ b/vos/config.ga.def
@@ -319,6 +319,7 @@ $i_dbm='undef'
$i_dirent='define'
$i_dlfcn='undef'
$i_fcntl='define'
+$i_features='undef'
$i_float='define'
$i_grp='define'
$i_iconv='undef'
diff --git a/vos/config.ga.h b/vos/config.ga.h
index 2a89a1e3bc..c2553e5c98 100644
--- a/vos/config.ga.h
+++ b/vos/config.ga.h
@@ -759,6 +759,12 @@
*/
#define I_FCNTL /**/
+/* I_FEATURES:
+ * This symbol, if defined, indicates that <features.h> exists and should
+ * be included.
+ */
+/*#define I_FEATURES /**/
+
/* I_FLOAT:
* This symbol, if defined, indicates to the C program that it should
* include <float.h> to get definition of symbols like DBL_MAX or
diff --git a/win32/config.bc b/win32/config.bc
index 6e27579320..c423e866e3 100644
--- a/win32/config.bc
+++ b/win32/config.bc
@@ -437,6 +437,7 @@ i_dirent='define'
i_dld='undef'
i_dlfcn='define'
i_fcntl='define'
+i_features='undef'
i_float='define'
i_gdbm='undef'
i_grp='undef'
diff --git a/win32/config.gc b/win32/config.gc
index 14a112e1d4..0fda668475 100644
--- a/win32/config.gc
+++ b/win32/config.gc
@@ -437,6 +437,7 @@ i_dirent='define'
i_dld='undef'
i_dlfcn='define'
i_fcntl='define'
+i_features='undef'
i_float='define'
i_gdbm='undef'
i_grp='undef'
diff --git a/win32/config.vc b/win32/config.vc
index 969b9d4bb8..5404329f38 100644
--- a/win32/config.vc
+++ b/win32/config.vc
@@ -437,6 +437,7 @@ i_dirent='define'
i_dld='undef'
i_dlfcn='define'
i_fcntl='define'
+i_features='undef'
i_float='define'
i_gdbm='undef'
i_grp='undef'