Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Installation/compilation issues on mac #11

Closed
nathanieldarling opened this issue Aug 16, 2023 · 3 comments
Closed

Installation/compilation issues on mac #11

nathanieldarling opened this issue Aug 16, 2023 · 3 comments

Comments

@nathanieldarling
Copy link

nathanieldarling commented Aug 16, 2023

Hi! I had socsim working on my mac after installing it earlier this year, though found it was often crashing and causing R to abort. I have tried installing the latest version of R, and reinstalled dev tools and checked xcode/ rccp are installed, but when I run the line devtools::install_github("MPIDR/rsocsim") I get an error (it's very long so only pasting the last part of it below).

Have you got advice on how best to fix this? Am I better returning to an earlier version of R or is there a different issue? Any advice would be much appreciated. Thanks!


In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:813:3: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(logstring, "agedif_mariage_sd (group %d) : %f\n",
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:830:3: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(logstring, "parameter0 : %f\n", parameter0);
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:838:3: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(logstring, "parameter1 : %f\n", parameter1);
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:846:3: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(logstring, "parameter2 : %f\n", parameter2);
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:854:3: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(logstring, "parameter3 : %f\n", parameter3);
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:862:3: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(logstring, "parameter4 : %f\n", parameter4);
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:870:3: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(logstring, "parameter6 : %f\n", parameter6);
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:878:3: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(logstring, "parameter7 : %f\n", parameter7);
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:886:3: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(logstring, "parameter8 : %f\n", parameter8);
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:894:3: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(logstring, "parameter9 : %f\n", parameter9);
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:902:3: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(logstring, "parameter10 : %f\n", parameter10);
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:909:3: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(logstring, "alpha %lf\n", alpha);
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:920:3: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(logstring, "betaT %lf\n", betaT);
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:925:3: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(logstring, "birth interval %s\n", words[1]);
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:944:3: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(logstring,
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:960:4: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                        sprintf(logstring,
                        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:972:4: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                        sprintf(logstring,
                        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:1007:3: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(logstring, "endogamy %lf\n", endogamy);
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:1281:2: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
        register char *p, *q = NULL;
        ^~~~~~~~~
././src/load.cpp:1281:2: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
        register char *p, *q = NULL;
        ^~~~~~~~~
././src/load.cpp:1282:2: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
        register char **wp = words;
        ^~~~~~~~~
././src/load.cpp:1283:2: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
        register int state;
        ^~~~~~~~~
././src/load.cpp:1368:33: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
enum l_keyword l_lookup_keyword(register char *word)
                                ^~~~~~~~~
././src/load.cpp:1383:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "birth",
                ^~~~~~~~
                {
././src/load.cpp:1385:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "death",
                ^~~~~~~~
                {
././src/load.cpp:1387:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "divorce",
                ^~~~~~~~~~
                {
././src/load.cpp:1389:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "marriage",
                ^~~~~~~~~~~
                {
././src/load.cpp:1391:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "cohab_prob",
                ^~~~~~~~~~~~~
                {
././src/load.cpp:1393:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "birthtarget",
                ^~~~~~~~~~~~~~
                {
././src/load.cpp:1395:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "transittarget",
                ^~~~~~~~~~~~~~~~
                {
././src/load.cpp:1397:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "take_census",
                ^~~~~~~~~~~~~~
                {
././src/load.cpp:1399:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "sex_ratio",
                ^~~~~~~~~~~~
                {
././src/load.cpp:1401:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "proportion_male",
                ^~~~~~~~~~~~~~~~~~
                {
././src/load.cpp:1403:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "input_file",
                ^~~~~~~~~~~~~
                {
././src/load.cpp:1405:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "output_file",
                ^~~~~~~~~~~~~~
                {
././src/load.cpp:1407:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "execute",
                ^~~~~~~~~~
                {
././src/load.cpp:1409:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "include",
                ^~~~~~~~~~
                {
././src/load.cpp:1411:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "end",
                ^~~~~~
                {
././src/load.cpp:1413:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "single",
                ^~~~~~~~~
                {
././src/load.cpp:1415:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "married",
                ^~~~~~~~~~
                {
././src/load.cpp:1417:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "divorced",
                ^~~~~~~~~~~
                {
././src/load.cpp:1419:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "widowed",
                ^~~~~~~~~~
                {
././src/load.cpp:1421:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "cohabiting",
                ^~~~~~~~~~~~~
                {
././src/load.cpp:1423:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "F",
                ^~~~
                {
././src/load.cpp:1425:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "M",
                ^~~~
                {
././src/load.cpp:1427:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "segments",
                ^~~~~~~~~~~
                {
././src/load.cpp:1430:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "done",
                ^~~~~~~
                {
././src/load.cpp:1432:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "run",
                ^~~~~~
                {
././src/load.cpp:1434:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "read_xtra",
                ^~~~~~~~~~~~
                {
././src/load.cpp:1436:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "size_of_xtra",
                ^~~~~~~~~~~~~~~
                {
././src/load.cpp:1438:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "float",
                ^~~~~~~~
                {
././src/load.cpp:1440:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "lc_init",
                ^~~~~~~~~~
                {
././src/load.cpp:1442:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "lc_ax",
                ^~~~~~~~
                {
././src/load.cpp:1444:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "lc_bx",
                ^~~~~~~~
                {
././src/load.cpp:1446:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "lc_k_val",
                ^~~~~~~~~~~
                {
././src/load.cpp:1448:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "lc_k_mean",
                ^~~~~~~~~~~~
                {
././src/load.cpp:1450:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "lc_k_std_dev",
                ^~~~~~~~~~~~~~~
                {
././src/load.cpp:1452:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "lc_k_start_list",
                ^~~~~~~~~~~~~~~~~~
                {
././src/load.cpp:1454:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "lc_epsilon",
                ^~~~~~~~~~~~~
                {
././src/load.cpp:1456:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "fix_epsilon",
                ^~~~~~~~~~~~~~
                {
././src/load.cpp:1458:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "random_epsilon",
                ^~~~~~~~~~~~~~~~~
                {
././src/load.cpp:1460:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "random_father",
                ^~~~~~~~~~~~~~~~
                {
././src/load.cpp:1462:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "random_father_min_age",
                ^~~~~~~~~~~~~~~~~~~~~~~~
                {
././src/load.cpp:1464:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "integer",
                ^~~~~~~~~~
                {
././src/load.cpp:1466:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "double",
                ^~~~~~~~~
                {
././src/load.cpp:1468:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "string",
                ^~~~~~~~~
                {
././src/load.cpp:1470:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "alpha",
                ^~~~~~~~
                {
././src/load.cpp:1472:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "betaT",
                ^~~~~~~~
                {
././src/load.cpp:1474:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "bint",
                ^~~~~~~
                {
././src/load.cpp:1476:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "duration_specific",
                ^~~~~~~~~~~~~~~~~~~~
                {
././src/load.cpp:1478:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "factor",
                ^~~~~~~~~
                {
././src/load.cpp:1480:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "hhmigration",
                ^~~~~~~~~~~~~~
                {
././src/load.cpp:1482:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "hetfert",
                ^~~~~~~~~~
                {
././src/load.cpp:1484:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "endogamy",
                ^~~~~~~~~~~
                {
././src/load.cpp:1486:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "write_output",
                ^~~~~~~~~~~~~~~
                {
././src/load.cpp:1488:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "child_inherits_group",
                ^~~~~~~~~~~~~~~~~~~~~~~
                {
././src/load.cpp:1490:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "duration",
                ^~~~~~~~~~~
                {
././src/load.cpp:1492:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "firstyear",
                ^~~~~~~~~~~~
                {
././src/load.cpp:1494:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "transit",
                ^~~~~~~~~~
                {
././src/load.cpp:1496:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "hettrans",
                ^~~~~~~~~~~
                {
././src/load.cpp:1498:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "agedif_marriage_mean",
                ^~~~~~~~~~~~~~~~~~~~~~~
                {
././src/load.cpp:1500:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "agedif_marriage_sd",
                ^~~~~~~~~~~~~~~~~~~~~
                {
././src/load.cpp:1502:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "marriage_eval",
                ^~~~~~~~~~~~~~~~
                {
././src/load.cpp:1504:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "marriage_queues",
                ^~~~~~~~~~~~~~~~~~
                {
././src/load.cpp:1506:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "marriage_after_childbirth",
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
                {
././src/load.cpp:1509:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "marriage_peak_age",
                ^~~~~~~~~~~~~~~~~~~~
                {
././src/load.cpp:1511:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "marriage_slope_ratio",
                ^~~~~~~~~~~~~~~~~~~~~~~
                {
././src/load.cpp:1513:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "marriage_agedif_max",
                ^~~~~~~~~~~~~~~~~~~~~~
                {
././src/load.cpp:1515:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "marriage_agedif_min",
                ^~~~~~~~~~~~~~~~~~~~~~
                {
././src/load.cpp:1517:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "parameter0",
                ^~~~~~~~~~~~~
                {
././src/load.cpp:1519:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "parameter1",
                ^~~~~~~~~~~~~
                {
././src/load.cpp:1521:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "parameter2",
                ^~~~~~~~~~~~~
                {
././src/load.cpp:1523:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "parameter3",
                ^~~~~~~~~~~~~
                {
././src/load.cpp:1525:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "parameter4",
                ^~~~~~~~~~~~~
                {
././src/load.cpp:1527:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "parameter5",
                ^~~~~~~~~~~~~
                {
././src/load.cpp:1529:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "parameter6",
                ^~~~~~~~~~~~~
                {
././src/load.cpp:1531:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "parameter7",
                ^~~~~~~~~~~~~
                {
././src/load.cpp:1533:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "parameter8",
                ^~~~~~~~~~~~~
                {
././src/load.cpp:1535:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "parameter9",
                ^~~~~~~~~~~~~
                {
././src/load.cpp:1537:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                "parameter10",
                ^~~~~~~~~~~~~~
                {
././src/load.cpp:1539:3: warning: suggest braces around initialization of subobject [-Wmissing-braces]
                0,
                ^~
                {
././src/load.cpp:1542:2: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
        register struct tab *p;
        ^~~~~~~~~
././src/load.cpp:1552:23: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister]
void l_create_rateset(register struct l_context *cx, char *name)
                      ^~~~~~~~~
././src/load.cpp:1672:2: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
        sprintf(logstring, "add_lc_rate_block. years: %d, months: %d, prob %f, read_ax_or_bx: %d current_block->upper_age: %d, ",years,months,prob,read_ax_or_bx,current_block->upper_age);
        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:1907:6: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                                        sprintf(logstring, "ERROR......abr");
                                        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:1915:6: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                                        sprintf(logstring, "ERROR. inconsistent specifiation for LC rate set");
                                        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:2175:8: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                                                        sprintf(logstring,
                                                        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:2228:5: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                                sprintf(logstring, "ERROR birthtarget is set BUT  group %d has 0 or fewer expected births. This could result from the init pop having no females of childbearing age. Disable birthtarget for this group if you want results.", g);
                                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:2333:4: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                        sprintf(logstring,
                        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:2391:4: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                        sprintf(logstring,
                        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:2415:7: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(logstring,
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:2425:9: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                                                                sprintf(logstring,
                                                                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:2631:2: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
        sprintf(logstring,
        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:2741:6: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                                        sprintf(logstring, "reading fertility rates for: group=%d mstat=%d parity=%d", g, m, p);
                                        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:2745:7: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                                                sprintf(endbit, "+\n");
                                                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:16:
././src/load.cpp:2749:7: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                                                sprintf(endbit, "\n");
                                                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:18:
././src/utils.c:297:2: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
        sprintf(tmp_name, "output.%d", fy);
        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:18:
././src/utils.c:671:2: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
        sprintf(tmp_name, "childoutput.%d", fy);
        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
In file included from ././src/events.cpp:19:
././src/xevents.c:1677:3: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
  sprintf(logstring, "\n month:%d child:%d No qualified father found in %d attempts \n",
  ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
././src/events.cpp:477:5: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                                sprintf(logstring, "\n\nEncountered personid=%d with mstatus=%d (NOT SINGLE)\nSince no initial .omar file was found this is madness and can only lead to tears", p->person_id, p->mstatus);
                                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
././src/events.cpp:541:3: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                sprintf(logstring, "ERROR......abr3");
                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
././src/events.cpp:589:4: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                        sprintf(segnum, "%d", current_segment);
                        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
././src/events.cpp:822:4: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                        sprintf(logstring, "Population Total / living : %d / %d",
                        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
././src/events.cpp:895:5: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                                sprintf(logstring, "WARNING marriage_queues = 1; and marriage_eval == 'distribution'\n and yet females have failed to find matches immediately\n Months spent on queue:%d\n", time_waiting[FEMALE]);
                                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
././src/events.cpp:909:2: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
        sprintf(logstring, "total size of pop %d\n", last_person->person_id);
        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
././src/events.cpp:911:2: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
        sprintf(logstring, "living size of pop %d\n", size_of_pop[0]);
        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
In file included from startSocsimWithFile.cpp:4:
././src/events.cpp:1958:5: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
                                sprintf(logstring, "up: %d  width: %d lam: %lf  modlam: %lf\n",
                                ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only.  Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
                                                      ^
139 warnings and 8 errors generated.
make: *** [startSocsimWithFile.o] Error 1
ERROR: compilation failed for package ‘rsocsim’
* removing ‘/Library/Frameworks/R.framework/Versions/4.3-arm64/Resources/library/rsocsim’
Warning message:
In i.p(...) :
  installation of package ‘/var/folders/jy/t029hcv94mqf2mf0n1bb67wc0000gn/T//RtmpixMSBm/filedbd23909bd99/rsocsim_1.5.8.tar.gz’ had non-zero exit status
@tomthe
Copy link
Member

tomthe commented Aug 16, 2023

Hi n-darl,
Thank you for reporting this issue and including the error messages.

The error seems to be that the keyword "register" is not allowed by your compiler:

././src/load.cpp:1281:2: error: ISO C++17 does not allow 'register' storage class specifier [-Wregister]

the code looks like this:

register struct tab *p;

Reason it is there: socsim is mostly quite old C code. "register" instructs/suggests old compilers to store the variable on the register, which is faster than RAM.

To use it with newer compilers I had to change a lot of similar stuff. But my compiler on Windows didn't warn me about "register", so I didn't remove it. Rcpp on Mac uses a different compiler, it throws an error.

From what I have read (e.g. here: https://stackoverflow.com/questions/3207018/register-keyword-in-c
"Nonetheless some implementations still allow it and either ignore it (MSVC, ICC) or use it as an optimization hint (GCC)",
"According to Herb Sutter, register is "exactly as meaningful as whitespace" and has no effect on the semantics of a C++ program."), we can just remove the keyword "register" without any ill effects. Then it should work.

All the other warnings should also be handled by me. I will do this someday in the future!
There are many warnings that sprintf is deprecated and that we should use braces around subobjects when initializing them. I will put this on my todo-list.

tomthe added a commit that referenced this issue Aug 16, 2023
See #11

it causes errors on Mac
it has no use, according to https://stackoverflow.com/questions/3207018/register-keyword-in-c

"According to Herb Sutter, register is "exactly as meaningful as whitespace" and has no effect on the semantics of a C++ program."
@tomthe
Copy link
Member

tomthe commented Aug 16, 2023

I removed the "register" keywords and created a new release: https://github.com/MPIDR/rsocsim/releases/tag/v1.5.9

You can try to run the installation again.

(I still don't understand why it worked on my test-mac before...)
Unfortunately I don't have a Mac at hand now, so I can't test whether it works on Mac or not. So please report back if it does or doesn't. Thank you!

@nathanieldarling
Copy link
Author

nathanieldarling commented Aug 21, 2023 via email

@tomthe tomthe closed this as completed Dec 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants