/* smp1.cpp */
/*---------------------------------------------------------------------*
  C言語注釈C++化テストプログラム

  Copyright (C) 1998-2001 Hirabayashi Masahide
 *---------------------------------------------------------------------*/

#include <stdio.h> /* puts */
#include <stdlib.h> /* EXIT_SUCCESS */


main()
{
//[1-1]==================================
/**/

//[1-2]==================================
/* cmt */

//[1-3]==================================
/* 注釈 */

//[1-4]==================================
/* cmt1 */ /* cmt2 */

//[1-5]==================================
// cmt

//[1-6]==================================
// 注釈

//[2-1]==================================
  puts("str");/**/

//[2-2]==================================
  puts("str");/* 注釈 */

//[2-3]==================================
  puts("str"); // /* cmt

//[2-4]==================================
  puts("str"); // /* 注釈

//[2-5]==================================
  puts("str"); // /* cmt */

//[2-6]==================================
  puts("str"); // /* 注釈 */

//[2-7]==================================
  puts("/*cmt*/");

//[3-1]==================================
/* cmt\*/

//[3-2]==================================
/* cmt\ */

//[3-3]==================================
/* cmt\
   */

//[3-4]==================================
/* cmt\
   */

//[3-5]==================================
/* cmt */ #define MACRO \
  123

//[3-6]==================================
#define MACRO /* cmt */ \
  123

//[3-7]==================================
/* 不能*/

//[3-8]==================================
/* 不能 */

//[3-9]==================================
/* 不能
   */

//[3-10]=================================
/* 不能
   */

//[4-1]==================================
  /**/ puts("str");

//[4-2]==================================
 /* c1 */ puts("s1");

//[4-3]==================================
 /* c1 */ puts("s1"); /* c2 */

//[4-4]==================================
 /* c1 */ puts("s1"); /* c2 */ puts("s2");

//[4-5]==================================
 /* c1 */ puts("s1"); /* c2 */ puts("s2"); /* c3 */

//[5-1]==================================
#if 0 /* cmt1 */
#endif /* cmt2 */

//[5-2]==================================
/* cmt1 */ #if 0 /* cmt2 */
/* cmt3 */ #endif /* cmt4 */

//[5-3]==================================
#if 0
 /* cmt */
 /*
  1
  */
#else
 /* cmt */
 /*
  1
  */
#endif

//[5-3]==================================
/*
#if 1
  puts("str");
#endif
*/

//[6-1]==================================
/*
 1
 2
 3
*/

//[6-2]==================================
/*  cmt \
 1
 2
 3
*/

//[6-3]==================================
puts("str"); /*
  1
  2
*/

//[6-4]==================================
/*
  1
  2
  cmt */

//[6-5]==================================
/*0
  1
  2
  cmt */

//[6-6]==================================
/*
   1
   2
   3
// 4
*/

//[6-12]==================================
   /*
   1
     2
       3
   */

//[7-1]==================================
/*0
  1
  2
  cmt */ puts("str");

//[7-2]==================================
/*0
  1
  2
  cmt */ puts("str"); /* cmt */

//[7-3]==================================
/*0
  1
  2
  cmt */ puts("s1"); /* 4 */ puts("s2");

//[7-4]==================================
/*0
  1
  2
  3 */ puts("str"); /*
  5
  6 */

//[7-5]==================================
/*0
  1
  2
  3 */ puts("str"); /* 4
  5
  6 */

//[8-1]==================================
/*
 *111
 *222
 *333
 */

//[8-2]==================================
/*
 * 111
 * 222
 * 333
 */

//[8-3]==================================
/*000
 *111
 *222
 *  333
 */

//[8-4]==================================
/* 000
 * 111
 * 222
 * 333
 */

//[8-5]==================================
/* 000
 * 111
 * 222
 * 333
 444 */

//[8-6]==================================
/*
 111
 *222
 *333
 */

//[9-1]==================================
    /*
     *111
     *222
     *333
     */

//[9-2]==================================
    /*
     * 111
     * 222
     * 333
     */

//[9-3]==================================
    /*
     111
     222
     333
     */

//[9-4]==================================
/*
*111
*222
*333
*/

//[9-5]==================================
/*
* 111
* 222
* 333
*/

//[10-1]==================================
/*-------------------*
 *111
 *222
 *333
 *-------------------*/

//[10-2]==================================
/*-------------------*
111
222
  333
 *-------------------*/

//[10-3]==================================
/*-------------------*
 *111
 *222
 *  333
 *---*/ puts("str"); /*------------*/

//[10-4]==================================
/*-------------------
 *111
 *222
 *  333
 *-------------------*/

//[10-5]==================================
/*-------------------
111
222
  333
 *-------------------*/

//[11-1]==================================

  return EXIT_SUCCESS;
} /* main */


/** end **/