Testing latest pari + WASM + node.js... and it works?! Wow.
License: GPL3
ubuntu2004
/* Copyright (C) 2000 The PARI group.12This file is part of the PARI/GP package.34PARI/GP is free software; you can redistribute it and/or modify it under the5terms of the GNU General Public License as published by the Free Software6Foundation; either version 2 of the License, or (at your option) any later7version. It is distributed in the hope that it will be useful, but WITHOUT8ANY WARRANTY WHATSOEVER.910Check the License for details. You should have received a copy of it, along11with the package; see the file 'COPYING'. If not, write to the Free Software12Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */1314/* This files contains macros depending on system and compiler */1516#ifdef __cplusplus17# define ANYARG ...18# define BEGINEXTERN extern "C" {19# define ENDEXTERN }20#else21# define ANYARG22# define BEGINEXTERN23# define ENDEXTERN24#endif2526#ifdef DISABLE_INLINE27# undef ASMINLINE28#else29# ifdef __cplusplus30# define INLINE inline static31# elif defined(__GNUC__)32# define INLINE __inline__ static33# endif34#endif3536#ifndef DISABLE_VOLATILE37# ifdef __GNUC__38# define VOLATILE volatile39# endif40#endif4142#ifndef VOLATILE43# define VOLATILE44#endif45#ifndef INLINE46# define INLINE static47#endif48#ifdef ENABLE_TLS49# define THREAD __thread50#else51# define THREAD52#endif5354#if defined(_WIN32) || defined(__CYGWIN32__)55/* ANSI C does not allow to longjmp() out of a signal handler, in particular,56* the SIGINT handler. On Win32, the handler is executed in another thread, and57* longjmp'ing into another thread's stack will utterly confuse the system.58* Instead, we check whether win32ctrlc is set in new_chunk(). */59BEGINEXTERN60extern int win32ctrlc, win32alrm;61void dowin32ctrlc(void);62ENDEXTERN63#define CHECK_CTRLC if (win32ctrlc) dowin32ctrlc();64#else65#define CHECK_CTRLC66#endif676869