Add a kitchen sink upc_everything.h header file?

Issue #67 new
Former user created an issue

Originally reported on Google Code with ID 67 ``` This issue has been split from issue #10, which introduced several separate header-related questions, and now is focused only on the discussion of upc_flag_t (upc_op_t).

The gist of this enhancement request is that an all-in-one header file be provided.

```

Reported by `gary.funck` on 2012-07-17 19:55:09

Comments (6)

  1. Former user Account Deleted

    ``` I think I prefer upc_types.h (suggested by Steve), as "all" has a somewhat ambiguous meaning to me in this sense.

    Currently, upc_flag_t is defined in 7.2.6 ('Memory Semantics of Library Functions') under the section that I think we now consider representing "core" library functions. I've currently modified (not yet committed) the LaTeX such that upc_flag_t and upc_op_t are defined in 7.2.6 (as 'Library Support Types'), but it sounds like (via the comments in Issue #10) these should be moved outside specific reference to upc.h to a 7.3 section on UPC Types.

    Does this sound like a reasonable organization?

    Should the definition of upc_lock_t be moved from 7.2.4.1 to the new 7.3? ```

    Reported by `nspark.work` on 2012-07-19 02:59:21

  2. Former user Account Deleted

    ``` Set default Consensus to "Low". ```

    Reported by `gary.funck` on 2012-08-19 23:26:19 - Labels added: Consensus-Low

  3. Former user Account Deleted

    ``` Change Status to New: Requires review. ```

    Reported by `gary.funck` on 2012-08-19 23:37:41 - Status changed: `New`

  4. Former user Account Deleted

    ``` How about, instead of upc_all.h, we name it upc.h. :) ```

    Reported by `james.dinan` on 2012-08-20 02:40:54

  5. Former user Account Deleted

    ``` Issue 10 is the place to discuss the placement upc_flag_t/upc_op_t.

    The point of this issue was to consider providing a single header file that includes every library header available in the current compilation, as a convenience for users. It would not be appropriate to lump this into upc.h, as it may suck in some proposed or optional library definitions that the user doesn't want (but cannot avoid if upc.h gets them all).

    So the proposed header would look something like the code below. C99 doesn't provide anything like this, and the user can easily write one himself, but it may still be a nice convenience (especially for presentation examples).

    upc_everything.h: -------------------

    1. include <upc.h>
    1. ifdef UPC_TICK
    2. include <upc_tick.h>
    3. endif
    4. ifdef UPC_IO
    5. include <upc_io.h>
    6. endif
    7. ifdef UPC_COLLECTIVE
    8. include <upc_collective.h>
    9. endif
    10. ifdef UPC_CASTABLE
    11. include <upc_castable.h>
    12. endif
    13. ifdef UPC_ATOMIC
    14. include <upc_atomic.h>
    15. endif
    16. ifdef UPC_ASYNC
    17. include <upc_async.h>
    18. endif

    ```

    Reported by `danbonachea` on 2012-08-20 03:19:36

  6. Former user Account Deleted

    ``` The consensus on the last telecon was that we should not provide a upc_everything.h. It violates the spirit of C99, creates unwanted versioning interlock between the core document and optional/required docs, and the user can easily write one himself. ```

    Reported by `danbonachea` on 2012-10-04 11:11:09 - Status changed: `Rejected`

  7. Log in to comment