perl 4.0 patch 19: (combined patch)
[p5sagit/p5-mst-13.2.git] / stab.h
diff --git a/stab.h b/stab.h
index eb4b56f..3025342 100644 (file)
--- a/stab.h
+++ b/stab.h
@@ -1,26 +1,20 @@
-/* $Header: stab.h,v 3.0.1.4 90/10/16 10:33:08 lwall Locked $
+/* $RCSfile: stab.h,v $$Revision: 4.0.1.2 $$Date: 91/11/05 18:36:15 $
  *
- *    Copyright (c) 1989, Larry Wall
+ *    Copyright (c) 1991, Larry Wall
  *
- *    You may distribute under the terms of the GNU General Public License
- *    as specified in the README file that comes with the perl 3.0 kit.
+ *    You may distribute under the terms of either the GNU General Public
+ *    License or the Artistic License, as specified in the README file.
  *
  * $Log:       stab.h,v $
- * Revision 3.0.1.4  90/10/16  10:33:08  lwall
- * patch29: *foo now prints as *package'foo
- * patch29: package behavior is now more consistent
+ * Revision 4.0.1.2  91/11/05  18:36:15  lwall
+ * patch11: length($x) was sometimes wrong for numeric $x
  * 
- * Revision 3.0.1.3  90/08/09  05:18:42  lwall
- * patch19: Added support for linked-in C subroutines
+ * Revision 4.0.1.1  91/06/07  11:56:35  lwall
+ * patch4: new copyright notice
+ * patch4: length($`), length($&), length($') now optimized to avoid string copy
  * 
- * Revision 3.0.1.2  90/03/12  17:00:43  lwall
- * patch13: did some ndir straightening up for Xenix
- * 
- * Revision 3.0.1.1  89/12/21  20:19:53  lwall
- * patch7: in stab.h, added some CRIPPLED_CC support for Microport
- * 
- * Revision 3.0  89/10/18  15:23:30  lwall
- * 3.0 baseline
+ * Revision 4.0  91/03/20  01:39:49  lwall
+ * 4.0 baseline.
  * 
  */
 
@@ -75,7 +69,7 @@ HASH *stab_hash();
 struct stio {
     FILE       *ifp;           /* ifp and ofp are normally the same */
     FILE       *ofp;           /* but sockets need separate streams */
-#ifdef READDIR
+#ifdef HAS_READDIR
     DIR                *dirp;          /* for opendir, readdir, etc */
 #endif
     long       lines;          /* $. */
@@ -106,7 +100,10 @@ struct sub {
 
 #define Nullstab Null(STAB*)
 
+STRLEN stab_len();
+
 #define STAB_STR(s) (tmpstab = (s), stab_flags(tmpstab) & SF_VMAGIC ? stab_str(stab_val(tmpstab)->str_magic) : stab_val(tmpstab))
+#define STAB_LEN(s) (tmpstab = (s), stab_flags(tmpstab) & SF_VMAGIC ? stab_len(stab_val(tmpstab)->str_magic) : str_len(stab_val(tmpstab)))
 #define STAB_GET(s) (tmpstab = (s), str_get(stab_flags(tmpstab) & SF_VMAGIC ? stab_str(tmpstab->str_magic) : stab_val(tmpstab)))
 #define STAB_GNUM(s) (tmpstab = (s), str_gnum(stab_flags(tmpstab) & SF_VMAGIC ? stab_str(tmpstab->str_magic) : stab_val(tmpstab)))