static pthread_attr_t attr;
static int attr_inited = 0;
sigset_t fullmask, oldmask;
-#endif
static int attr_joinable = ATTR_JOINABLE;
+#endif
savethread = thr;
thr = new_struct_thread(thr);
/* No stash in name, so see how we can default */
if (!stash) {
- if (isIDFIRST(*name) || (IN_UTF8 && ((*name & 0xc0) == 0xc0) && isIDFIRST_utf8(name))) {
+ if (isIDFIRST(*name)
+ || (IN_UTF8 && ((*name & 0xc0) == 0xc0) && isIDFIRST_utf8((U8*)name)))
+ {
bool global = FALSE;
if (isUPPER(*name)) {
pasthru
- c_o xs_c xs_cpp xs_o top_targets linkext dlsyms dynamic dynamic_bs
+ c_o xs_c xs_o top_targets linkext dlsyms dynamic dynamic_bs
dynamic_lib static static_lib manifypods processPL installbin subdirs
clean realclean dist_basics dist_core dist_dir dist_test dist_ci
install force perldepend makefile staticmake test ppd
#else
# define VTBL *vtbl
static void restore_magic _((void *p));
+static int magic_methcall(SV *sv, MAGIC *mg, char *meth, I32 f, int n, SV *val);
#endif
/*
sv_setsv(TARG, sv);
*SvPV_force(TARG, len) = *s == '-' ? '+' : '-';
}
- else if (IN_UTF8 && *(U8*)s >= 0xc0 && isIDFIRST_utf8(s)) {
+ else if (IN_UTF8 && *(U8*)s >= 0xc0 && isIDFIRST_utf8((U8*)s)) {
sv_setpvn(TARG, "-", 1);
sv_catsv(TARG, sv);
}
{
if (!packname ||
((*(U8*)packname >= 0xc0 && IN_UTF8)
- ? !isIDFIRST_utf8(packname)
+ ? !isIDFIRST_utf8((U8*)packname)
: !isIDFIRST(*packname)
))
{
I32 sortcv _((SV *a, SV *b));
void save_magic _((I32 mgs_ix, SV *sv));
int magic_methpack _((SV *sv, MAGIC *mg, char *meth));
+int magic_methcall _((SV *sv, MAGIC *mg, char *meth, I32 f, int n, SV *val));
int magic_methcall _((MAGIC *mg, char *meth, I32 flags, int n, SV *val));
OP * doform _((CV *cv, GV *gv, OP *retop));
void doencodes _((SV* sv, char* s, I32 len));
}
skip_these [qw(
+yylex
cando
cast_ulong
my_chsize
#USE_THREADS = define
#
+# uncomment to enable multiple interpreters
+#
+#USE_MULTI = define
+
+#
# uncomment next line if you are using Visual C++ 2.x
#
#CCTYPE = MSVC20
!IF "$(OBJECT)" != ""
PERL_MALLOC = undef
USE_THREADS = undef
+USE_MULTI = undef
!ENDIF
!IF "$(PERL_MALLOC)" == ""
USE_THREADS = undef
!ENDIF
-#BUILDOPT = -DMULTIPLICITY
-#BUILDOPT = -DPERL_GLOBAL_STRUCT -DMULTIPLICITY
+!IF "$(USE_MULTI)" == ""
+USE_MULTI = undef
+!ENDIF
+
+#BUILDOPT = -DPERL_GLOBAL_STRUCT
# -DUSE_PERLIO -D__STDC__=1 -DUSE_SFIO -DI_SFIO -I\sfio97\include
!IF "$(PROCESSOR_ARCHITECTURE)" == ""
"dynamic_ext=$(DYNAMIC_EXT)" \
"nonxs_ext=$(NONXS_EXT)" \
"usethreads=$(USE_THREADS)" \
+ "usemultiplicity=$(USE_MULTI)" \
"LINK_FLAGS=$(LINK_FLAGS)" \
"optimize=$(OPTIMIZE)"
uniq='uniq'
use64bits='undef'
usedl='define'
-usemultiplicity='undef'
+usemultiplicity='define'
usemymalloc='n'
usenm='false'
useopcode='true'
* This symbol, if defined, indicates that Perl should
* be built to use multiplicity.
*/
-/*#define MULTIPLICITY /**/
+#define MULTIPLICITY /**/
/* USE_THREADS:
* This symbol, if defined, indicates that Perl should
{
$define{$1} = 1 if /^\s*#\s*define\s+(MYMALLOC)\b/;
$define{$1} = 1 if /^\s*#\s*define\s+(USE_THREADS)\b/;
+ $define{$1} = 1 if /^\s*#\s*define\s+(MULTIPLICITY)\b/;
}
close(CFG);
#USE_THREADS *= define
#
+# uncomment to enable multiple interpreters
+#
+#USE_MULTI *= define
+
+#
# uncomment one
#
#CCTYPE *= MSVC20
.IF "$(OBJECT)" != ""
PERL_MALLOC != undef
USE_THREADS != undef
+USE_MULTI != undef
.ENDIF
PERL_MALLOC *= undef
USE_THREADS *= undef
+USE_MULTI *= undef
-#BUILDOPT *= -DMULTIPLICITY
-#BUILDOPT *= -DPERL_GLOBAL_STRUCT -DMULTIPLICITY
+#BUILDOPT *= -DPERL_GLOBAL_STRUCT
# -DUSE_PERLIO -D__STDC__=1 -DUSE_SFIO -DI_SFIO -I\sfio97\include
.IMPORT .IGNORE : PROCESSOR_ARCHITECTURE
"dynamic_ext=$(DYNAMIC_EXT)" \
"nonxs_ext=$(NONXS_EXT)" \
"usethreads=$(USE_THREADS)" \
+ "usemultiplicity=$(USE_MULTI)" \
"LINK_FLAGS=$(LINK_FLAGS)" \
"optimize=$(OPTIMIZE)"
#endif
# ifndef PERL_OBJECT
# define PERL_GLOBAL_STRUCT
-# define MULTIPLICITY
+# ifndef MULTIPLICITY
+# define MULTIPLICITY
+# endif
# endif
#endif