Author Topic: Flffos 3.0 alpha8.0  (Read 5404 times)

Offline FallenTree

  • BFF
  • ***
  • Posts: 483
    • View Profile
Re: Flffos 3.0 alpha8.0
« Reply #15 on: April 18, 2015, 04:54:38 PM »
I couldn't find commit 7052b58, plus, -dirty means you have local edits.   I havn't had chance running your test yet, will try to reproduce locally in a bit.

You can also try merging the latest next-3.0  to see if things persist.

Offline DarKWateR

  • BFF
  • ***
  • Posts: 104
    • View Profile
Re: Flffos 3.0 alpha8.0
« Reply #16 on: April 19, 2015, 03:20:19 AM »
Hello, i cloned again the source code and now i have this error in make:
[CC] vm/internal/compiler/compiler.o
vm/internal/compiler/compiler.cc: In function ‚int find_matching_function(program_t*, char*, parse_node_t*)‚:
vm/internal/compiler/compiler.cc:998:24: error: ‚F_CALL_INHERITED‚ was not declared in this scope
vm/internal/compiler/compiler.cc: In function ‚int arrange_call_inherited(char*, parse_node_t*)‚:
vm/internal/compiler/compiler.cc:1085:20: error: ‚F_CALL_INHERITED‚ was not declared in this scope
vm/internal/compiler/compiler.cc: In function ‚parse_node_t* check_refs(int, parse_node_t*, parse_node_t*)‚:
vm/internal/compiler/compiler.cc:1401:9: error: ‚F_MAKE_REF‚ was not declared in this scope
vm/internal/compiler/compiler.cc:1417:5: error: ‚F_KILL_REFS‚ was not declared in this scope
vm/internal/compiler/compiler.cc: In function ‚parse_node_t* add_type_check(parse_node_t*, int)‚:
vm/internal/compiler/compiler.cc:1855:3: error: ‚F_TYPE_CHECK‚ was not declared in this scope

Offline FallenTree

  • BFF
  • ***
  • Posts: 483
    • View Profile
Re: Flffos 3.0 alpha8.0
« Reply #17 on: April 19, 2015, 05:25:13 AM »
what is your local_options?  Are you sure you didn't forgot  PACKAGE_OPS and PACKAGE_CORE ?

I suggest you directly use the supplied local_options, instead of manually merging...

Offline DarKWateR

  • BFF
  • ***
  • Posts: 104
    • View Profile
Re: Flffos 3.0 alpha8.0
« Reply #18 on: April 19, 2015, 06:44:23 AM »
it's true, my local_options is already old, i updated and compiled ok, sorry!

The error is gone, at least the same example in testsuite is ok!

Later, i'll try test in my real mudlib too.

Thank you very much!

Offline DarKWateR

  • BFF
  • ***
  • Posts: 104
    • View Profile
Re: Flffos 3.0 alpha8.0
« Reply #19 on: April 19, 2015, 08:21:46 AM »
hello again, i tested supplied local_options and fails again.

I only changed two or three defines.
Code: [Select]
/*
 * local_options.h: compile-time configuration of the driver
 */

/****************************************************************************
 * EVERY time you change ANYTHING in this file, RECOMPILE from scratch.     *
 * (type "make clean" then "make" on a UNIX system) Failure to do so may    *
 * cause the driver to behave oddly.                                        *
 ****************************************************************************/

/* NOTES: Many of the configurable options are now set in the runtime config.
 *
 * This file only contain a list of default settings, for quick diffing .
 * See detailed explaination from 'local_options.README'
 */

#ifndef _LOCAL_OPTIONS_H_
#define _LOCAL_OPTIONS_H_

/****************************************************************************
 *                              COMPAT                                      *
 ****************************************************************************/
#define COMPAT_32
#undef NO_ADD_ACTION
#undef NO_SNOOP
#undef NO_ENVIRONMENT
#undef NO_WIZARDS
#undef NO_SHADOWS
#undef PRIVS
#define SENSIBLE_MODIFIERS

/****************************************************************************
 *                              BEHAVIOR                                    *
 ****************************************************************************/
#define OLD_ED
#undef ED_INDENT_CASE
#define ED_INDENT_SPACES 4
#undef RECEIVE_ED
#define RESTRICTED_ED

#define DEFAULT_PRAGMAS PRAGMA_WARNINGS + PRAGMA_SAVE_TYPES + PRAGMA_ERROR_CONTEXT + PRAGMA_OPTIMIZE
#define SAVE_EXTENSION ".o"
#define SAVE_GZ_EXTENSION ".o.gz"

/****************************************************************************
 *                              PACKAGES                                    *
 ****************************************************************************/
#undef CUSTOM_CRYPT
#define PACKAGE_ASYNC
#define PACKAGE_COMPRESS
#define PACKAGE_CONTRIB
#define PACKAGE_CORE
#undef PACKAGE_CRYPTO

#define PACKAGE_DB
#ifdef PACKAGE_DB
#define USE_MYSQL 1
#undef USE_POSTGRES
#undef USE_SQLITE3
#endif

#define PACKAGE_DEVELOP
#undef PACKAGE_DWLIB
#define PACKAGE_EXTERNAL
#define PACKAGE_MATH
#undef PACKAGE_MATRIX
#define PACKAGE_MUDLIB_STATS
#define PACKAGE_OPS
#define PACKAGE_PARSER
#undef PACKAGE_PCRE
#define PACKAGE_SHA1
#define PACKAGE_SOCKETS
#define PACKAGE_TRIM
#undef PACKAGE_THREAD

#define PACKAGE_UIDS
#ifdef PACKAGE_UIDS
#define AUTO_SETEUID
#undef AUTO_TRUST_BACKBONE
#endif
#endif /* _LOCAL_OPTIONS_H_ */

Same bug.
Code: [Select]
string* epilog(int)
{
  string *items;
  string err;
  int *arr = ({ 1, 2 , 3 }), *arr2;
  string error;
  arr2=arr;
  time_expression{
    error = catch(arr[0] = 9);
    debug_message("Error: " + error);
    debug_message(sprintf("Value of arr: %O.", arr));
  };
}

it returns:
Error: *Cannot index value of type 'int'.
Value of arr: 47106355532288.

is 'status' datatype supports gone?
in local_options supplied don't appear this define and if i add manually, doesn't work.
Code: [Select]
string* epilog(int)
{
status myvar = 1;
}
It returns:
/single/master.c line 102: Undefined variable 'status' before  = 1;
/single/master.c line 102: syntax error before  = 1;
/single/master.c line 102: Illegal LHS before the end of line
/single/master.c line 102: Warning: Expression has no side effects, and the value is unused before the end of line

My mudlib is 15 years old and old code use this datatype.

Offline FallenTree

  • BFF
  • ***
  • Posts: 483
    • View Profile
Re: Flffos 3.0 alpha8.0
« Reply #20 on: April 19, 2015, 01:32:44 PM »
i will look into it.  I indeed removed status type.  It is just a int type, you can add a global define in your mudlib

#define status int 

to work around that I think.

Offline DarKWateR

  • BFF
  • ***
  • Posts: 104
    • View Profile
Re: Flffos 3.0 alpha8.0
« Reply #21 on: April 19, 2015, 02:16:20 PM »
its true, i didn't thin in add a define in the mudlib! Ok, then, thaks!

About the other error, i'm testing too.

Offline FallenTree

  • BFF
  • ***
  • Posts: 483
    • View Profile
Re: Flffos 3.0 alpha8.0
« Reply #22 on: April 21, 2015, 05:23:47 AM »
Got any result ?

Offline DarKWateR

  • BFF
  • ***
  • Posts: 104
    • View Profile
Re: Flffos 3.0 alpha8.0
« Reply #23 on: April 21, 2015, 09:59:23 AM »
not yet :(

Offline silenus

  • BFF
  • ***
  • Posts: 178
    • View Profile
Re: Flffos 3.0 alpha8.0
« Reply #24 on: April 25, 2015, 05:32:40 PM »
I just untarred the new alpha but I am having some difficulties with configure under fedora 21. It seems to be unable to locate libevent even though I have installed the package  and the header files are already in /usr/include and the library in /usr/lib64. I tried using the --with-libevent but this doesnt seem to work either.

Thanks in advance,

Silenus.

Offline FallenTree

  • BFF
  • ***
  • Posts: 483
    • View Profile
Re: Flffos 3.0 alpha8.0
« Reply #25 on: April 27, 2015, 05:53:49 AM »
I just untarred the new alpha but I am having some difficulties with configure under fedora 21. It seems to be unable to locate libevent even though I have installed the package  and the header files are already in /usr/include and the library in /usr/lib64. I tried using the --with-libevent but this doesnt seem to work either.

Thanks in advance,

Silenus.

Can you post the detailed log and, more specifically , config.log  file? It will tell you what it tries to use, and how it have failed.

Offline quixadhal

  • BFF
  • ***
  • Posts: 631
    • View Profile
    • WileyMUD
Re: Flffos 3.0 alpha8.0
« Reply #26 on: April 27, 2015, 04:30:10 PM »
Using the github version (git clone git@github.com:fluffos/fluffos.git fluff3), I tweaked local_options a bit to try to be closer to the dead-souls 2.x version.  After build.FluffOS and make, it fails on the packages.

Specifically, it can't include ../base/std.h, ../lpc_incl.h, or ../efun_protos.h in matrix.cc

std.h appears to be a level further up, but I can't find the other two at all... are they generated?

The code is looking a lot cleaner and more organized, so kudos! :)

Offline FallenTree

  • BFF
  • ***
  • Posts: 483
    • View Profile
Re: Flffos 3.0 alpha8.0
« Reply #27 on: April 28, 2015, 11:14:40 AM »
matrix package hasn't been updated. 

You should just include "base/package_api.h" , and it should compile. (look in other package file for detail).

Offline quixadhal

  • BFF
  • ***
  • Posts: 631
    • View Profile
    • WileyMUD
Re: Flffos 3.0 alpha8.0
« Reply #28 on: April 28, 2015, 05:53:46 PM »
Thanks, got that part working.

I think there needs to be a slight patch for the case where OLD_ED is not defined.

In packages/core/efuns_main.cc:

Code: [Select]
#ifdef F_QUERY_ED_MODE
void f_query_ed_mode(void) {
  /* n = prompt for line 'n'
   0 = normal ed prompt
   -1 = not in ed
   -2 = more prompt */
  if (current_object->flags & O_IN_EDIT) {
    push_number(object_ed_mode(current_object));
  } else {
    push_number(-1);
  }
}
#endif

I'm thinking maybe?

Code: [Select]
#ifdef F_QUERY_ED_MODE
void f_query_ed_mode(void) {
  /* n = prompt for line 'n'
   0 = normal ed prompt
   -1 = not in ed
   -2 = more prompt */
#ifdef OLD_ED
  if (current_object->flags & O_IN_EDIT) {
    push_number(object_ed_mode(current_object));
  } else {
    push_number(-1);
  }
#else
    push_number(-1);
#endif
}
#endif

That compiles, but not sure if it does what's intended.